파일 서버에서 파일 목록을 다운로드하는 방법은 무엇입니까?


10

http://www.apache.org/dist/httpd/binaries/ 와 같은 파일 서버에서 파일 목록을 어떻게 다운로드 합니까?

wget을 사용할 수 있다고 가정하지만 모든 링크와 html 파일을 가져 오려고 시도합니다. 이를 위해 더 좋은 도구가 있습니까?


질문을 명확히하기 위해 : 파일 자체가 아니라 서버에서 다운로드 할 수있는 파일 목록을 원하십니까?
akira

`wget --no-verbose --spider --no-directories --recursive --level = 2 apache.org /dist/httpd/binaries`와 같은 명령이 어떤 식으로 작동하지 않습니까? 좀 더 구체적으로 도움이 될 수 있다면
DaveParillo

답변:


12

wget페이지를 크롤링 할 때 다운로드 할 파일 확장자 를 지정할 수 있습니다 .

wget -r -A zip,rpm,tar.gz www.site.com/startpage.html

이은으로 재귀 검색 만 다운로드 파일을 수행 .zip, .rpm.tar.gz확장.


8

서버에서 파일을 가져 오지 않고 파일 목록을 원한다고 가정하십시오 (아직).

%> wget -r -np --spider http://www.apache.org/dist/httpd/binaries/ 2> & 1 | awk -f filter.awk | 유니크

'filter.awk'는 다음과 같습니다.

/^--.*-- http : \ / \ /.* [^ \ /] $ / {u = $ 3; }
/ ^ 길이 : [[: digit :]] + / {print u; }

다음과 같은 항목을 필터링해야 할 수도 있습니다.

"http://www.apache.org/dist/httpd/binaries/?C=N;O=D"

0

참조 : http://blog.incognitech.in/download-files-from-apache-server-listing-directory/

다음 명령을 사용할 수 있습니다.

wget --execute="robots = off" --mirror --convert-links --no-parent --wait=5 <website-url>

각 옵션에 대한 설명

  • wget: 간단한 명령으로 CURL을 요청하고 로컬 파일로 원격 파일을 다운로드합니다.
  • --execute="robots = off": 페이지를 크롤링하는 동안 robots.txt 파일을 무시합니다. 모든 파일을받지 못한 경우 도움이됩니다.
  • --mirror:이 옵션은 기본적으로 주어진 URL의 디렉토리 구조를 반영합니다. 바로 가기입니다 -N -r -l inf --no-remove-listing.
    • -N: 로컬보다 최신이 아닌 경우 파일을 다시 검색하지 마십시오
    • -r: 재귀 다운로드 지정
    • -l inf: 최대 재귀 깊이 (무한의 경우 INF 또는 0)
    • --no-remove-listing: '.listing'파일을 제거하지 마십시오
  • --convert-links: 다운로드 한 HTML 또는 CSS의 링크가 로컬 파일을 가리 키도록합니다.
  • --no-parent: 상위 디렉토리로 올라가지 마십시오.
  • --wait=5: 검색 사이에 5 초 동안 기다립니다. 그래서 우리는 서버를 쓰러 뜨리지 않습니다.
  • <website-url>: 파일을 다운로드 할 수있는 웹 사이트 URL입니다.

해피 다운로드 : 스마일 :

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.