나는 보았다이것하지만 작동하지 않습니다. Remote/ftp 디렉토리 구조는 다음과 같습니다.
domain.com/
toplevel/
foo1/
ARCHIVE/
README.stuff
DATA/
README.txt
...other nested folders
wantedstuff.zip
wantedstuff2/
morewantedstuff.zip
...otherstuffwanted
/toplevel
.txt /ARCHIVE
에 있는 각 중첩 폴더의 폴더 내부에 있는 모든 것을 제외한 모든 것을 원합니다 /toplevel/*
.
나는 이것을 시도했습니다 :
wget --continue -r --exclude-directories=/ARCHIVE/ ftp://domain.com/toplevel/
그리고 이것들은:
wget --continue -r --exclude-directories=ARCHIVE ftp://domain.com/toplevel/
wget --continue -r --exclude-directories=ARCHIVE/ ftp://domain.com/toplevel/
wget --continue -r X /ARCHIVE/ ftp://domain.com/toplevel/
wget --continue -r -X '*/ARCHIVE/*' ftp://domain.com/toplevel/
wget --continue -r -X '*/ARCHIVE' ftp://domain.com/toplevel/
wget --continue -r --reject-regex '.*/ARCHIVE/.*' ftp://domain.com/toplevel/
하지만 그 어느 것도 작동하지 않는 것 같습니다. 여전히 ARCHIVE 폴더를 다운로드합니다. 다운로드를 중지하는 방법이 궁금합니다.
답변1
toplevel/foo를 포함해야 합니다.이전 예해결책은 다음과 같아야 합니다.
wget --continue -r --exclude-directories=/toplevel/foo/ARCHIVE/ ftp://domain.com/toplevel/
어떤 이유로 나는 다음을 선호합니다.
wget --continue -X /toplevel/foo/ARCHIVE/ -r ftp://domain.com/toplevel/
처음 두 개의 최상위 수준에서 모든 ARCHIVE 디렉터리를 제외하려면:
wget --continue -X */*/ARCHIVE/ -r ftp://domain.com/toplevel/
그러나 이것은 개인적인 취향입니다.