wget을 사용하여 전체 디렉토리 및 하위 디렉토리를 다운로드하는 방법은 무엇입니까?


143

wget해당 프로젝트의 SVN 서버가 더 이상 실행되지 않고 브라우저를 통해서만 파일에 액세스 할 수 있으므로을 사용하여 프로젝트의 파일을 다운로드하려고 합니다. 모든 파일의 기본 URL은 다음과 같습니다.

http://abc.tamu.edu/projects/tzivi/repository/revisions/2/raw/tzivi/ *

wget"tzivi"폴더가 루트 폴더이고 그 아래에 여러 파일과 하위 폴더 (최대 2 개 또는 3 개 레벨)가있는이 저장소의 모든 파일을 다운로드 하는 방법 (또는 다른 유사한 도구)을 어떻게 사용할 수 있습니까?


3
서버에 필요한 파일에 대한 모든 링크 목록이있는 웹 페이지가없는 경우에는 그렇게 할 수 없습니다.
— Eddy_Em 2016 년

1
파일 이름을 알고 있습니까?
— Karoly Horvath

아니오 나는 모든 파일의 이름을 모른다. 나는 재귀 옵션으로 wget을 시도했지만 작동하지 않았다. 서버에 모든 내부 링크를 나열하는 index.html 파일이 없기 때문입니다.
— code4fun

wget의 미러링 옵션을 사용해 보셨습니까?
— Tomasz Nguyen

답변:


193

쉘에서 이것을 사용할 수 있습니다 :

wget -r --no-parent http://abc.tamu.edu/projects/tzivi/repository/revisions/2/raw/tzivi/

매개 변수는 다음과 같습니다.

-r     //recursive Download

과

--no-parent // Don´t download something from the parent directory

전체 컨텐츠를 다운로드하지 않으려면 다음을 사용할 수 있습니다.

-l1 just download the directory (tzivi in your case)

-l2 download the directory and all level 1 subfolders ('tzivi/something' but not 'tivizi/somthing/foo')  

등등. -l옵션 을 삽입하지 않으면 자동으로 wget사용 -l 5됩니다.

삽입하면 -l 0인터넷 전체를 다운로드 wget하게됩니다 . 왜냐하면 모든 링크를 따라 가기 때문 입니다.


19
다음 독자를 위해 단순화하기 위해 훌륭 wget -r -l1 --no-parent http://www.stanford.edu/~boyd/cvxbook/cvxbook_additional_exercises/합니다. 답변 감사합니다.
— 동 형사상

2
모든 파일을 가져 오기 위해 위의 명령을 시도했지만 http://websitename.com/wp-content/uploads/2009/05얻은 index.html파일은 아무것도 없었습니다. 내가 놓친 것을 알 수 없습니다.
— Vivek Todi

@up : wget은 링크를 따르므로 디렉토리 목록이 필요합니다.;)

11
나는 이것이 아주 오래되었다는 것을 안다. 그러나 내가 찾은 것은 -e robots=off스위치였습니다. ;)
— Matthias W.

2
"중요한 것을 잊어 버렸습니다"를 제거하고 답을 고치세요.
— user1271772

16

쉘에서 이것을 사용할 수 있습니다.

wget -r -nH --cut-dirs=7 --reject="index.html*" \
      http://abc.tamu.edu/projects/tzivi/repository/revisions/2/raw/tzivi/

매개 변수는 다음과 같습니다.

-r recursively download

-nH (--no-host-directories) cuts out hostname 

--cut-dirs=X (cuts out X directories)



1

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

wget --mirror -pc --convert-links -P ./your-local-dir/ http://www.your-website.com

다운로드하려는 웹 사이트의 정확한 미러를 얻을 수 있도록


1

이 링크 는 나에게 가장 좋은 대답을 주었다.

$ wget --no-clobber --convert-links --random-wait -r -p --level 1 -E -e robots=off -U mozilla http://base.site/dir/

매력처럼 일했다.


-1

이것은 작동합니다 :

wget -m -np -c --no-check-certificate -R "index.html*" "https://the-eye.eu/public/AudioBooks/Edgar%20Allan%20Poe%20-%2"
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.