다운로드하려는 URI 목록으로 구성된 구성 파일이 있습니다. 예를 들어
http://xyz.abc.com/Dir1/Dir3/sds.exe
http://xyz.abc.com/Dir2/Dir4/jhjs.exe
http://xyz.abc.com/Dir1/itr.exe
구성 파일을 읽고 각 URL을 복사하고 싶지만 동시에 호스트와 동일한 디렉토리 구조를 만듭니다. 예를 들어, 구성 파일의 첫 번째 줄에 대해 로컬 컴퓨터에 디렉토리 구조 Dir1 / Dir3 (없는 경우)을 만든 다음 sds.exe를 … / Dir1 / Dir3 /에 복사하려고합니다.
‘wget -i’를 사용하여 파일의 모든 URL을 다운로드 할 수 있지만 해당 디렉토리 구조를 어떻게 만들 수 있습니까?
답변
보낸 사람 man wget
:
-x, –force- 디렉토리 :
[…]
디렉토리가 생성되지 않았더라도 디렉토리 계층을 생성합니다. 예를 들어 wget -x http://fly.srk.fer.hr/robots.txt 는 다운로드 한 파일을 fly.srk.fer.hr/robots.txt에 저장합니다.
답변
원하는 구조를 얻으려면 -n뿐만 아니라 -nH를 사용하는 것이 좋습니다.
이렇게하면 호스트 이름이 제거되고 예상 디렉토리 구조가 생성됩니다.
예 :
wget -x -nH http://xyz.abc.com/Dir1/Dir3/sds.exe
- 'Dir1/Dir3/sds.exe' saved [1234]
매뉴얼 페이지에서 :
-nH
--no-host-directories
Disable generation of host-prefixed directories. By default, invoking Wget with -r http://fly.srk.fer.hr/ will create a structure of directories beginning with fly.srk.fer.hr/. This option disables such behavior.
-x
--force-directories
...create a hierarchy of directories, even if one would not have been created otherwise...