웹서버 디렉토리 목록에서 사용할 수 있는 디렉토리/파일 이름 목록을 컬링/wget하려고 합니다.
예를 들어 (무작위로 선택됨)http://prodata.swmed.edu/download/, 다운로드하려고 합니다:
bin
dev
etc
member
pub
usr
usr1
usr2
cUrl( curl http://prodata.swmed.edu/download/
)은 전체 HTML 페이지를 가져오므로 모든 파일/디렉토리 항목을 수동으로 구문 분석해야 합니다.
추가 파서를 설치하지 않고 컬/wget을 사용하여 사용 가능한 파일/디렉터리 이름만 다운로드할 수 있는 방법이 있습니까?
답변1
HTTP 프로토콜에는 HTTP 서버에서 "파일 목록"을 요청하는 기능이 없습니다.
curl
// wget
브라우저는 임의의 요청 문자열이 포함된 URL을 요청하고 서버는 임의의 데이터를 반환합니다.
하지만 다음을 사용하여 이름을 추출할 수 있습니다.
curl --silent http://prodata.swmed.edu/download/ | grep -o 'href=".*">' | sed 's/href="//;s/\/">//'
bin
dev
etc
member
pub
usr
usr1
usr2
답변2
curl -s http://example.com/files/ | grep -o 'href=".*">' | sed -e "s/href=\"//g" | sed -e "s/\"\>//g"
ls
카탈로그에 있는 듯한 경험을 해주세요