2014-09-17 2 views
-1

디렉토리에 색인. * 파일이있는 경우 파일을 재귀 적으로 가져 오는 방법은?wget 색인. * 파일이있는 디렉토리를 다운로드하지 않습니다.

VPS의 새 집에 공유 호스팅 (SSH 없음)에있는 여러 웹 사이트의 여러 디렉토리를 복사해야합니다. 서버에서 서버로 연결하려고합니다.

wget -r -e robots=off --no-parent --user=myusername --password=mypass http://mywebsite.com/mydir/ 

이 기능은 "mydir"이하의 모든 파일 및 하위 디렉토리를 한꺼번에 검색 할 때 유용합니다. 디렉토리 중 하나에 index.html, index.php 등이 있으면 해당 디렉토리의 내용을 다운로드하지 않습니다. index.html 만 다운로드하거나 index.php를 다운로드 한 다음 파일을 index.html로 변경합니다.

-p -m --no-cookies --ftp 플래그 등 여러 가지 조합을 시도했지만 index. * 파일이있는 디렉토리를 얻지는 않습니다.

원본 서버에 tar를 만들고 독점적으로 다운로드하지 않고이 작업을 수행하려고합니다.

SO 및 다른 사이트에서 index.html 파일을 만드는 데 관한 수많은 기사가 있지만 색인 파일이있는 경우 디렉토리를 건너 뛰는 정보는 찾을 수 없습니다. index.html 파일을 만들지 않는 것이 좋겠지 만, 인덱스. * 파일이 있으면 필자의 주요 관심사는 전체 디렉토리를 얻는 것입니다.

도움 주셔서 감사합니다.

업데이트 : @Reeno가 나를 궤멸 시켰습니다. 다음 명령을 사용하여 새 FTP 계정으로 다시 시도하면 index. *가있는 파일을 포함한 모든 디렉토리가 성공적으로 다운로드 될 수 있습니다.

wget -r [email protected] --ftp-password=mypass ftp://ftp.mywebsite.com/mydir/ 
+1

당신이이 디렉토리 중 하나에있는 모든 파일 이름을 알고 있거나 FTP로 연결하지 않으면 불가능합니다. – Reeno

+0

@Reeno ftp를 사용하여 wget을 먼저 시도했지만 뭔가를 놓쳤을 것입니다. 새 FTP 계정을 만들었으므로 이번에는 작동했습니다. 고맙습니다. 이 질문을 답안으로 추가하고자한다면 기꺼이 받아 들일 것입니다. –

답변

0

wget http를 통해 전체 디렉토리를 다운로드하지 않습니다. 웹 서버를 사용하면 디렉토리를 내용 목록으로 표시 할 수 있습니다. 실제 형식은 html 페이지이므로 wget은 해당 페이지의 링크가 가리키는 내용을 모두 재귀 적으로 가져옵니다.

사이트에 대한 ftp 액세스 권한이 있으면 대신 ftp를 사용할 수 있습니다. http ftp와 달리 파일 시스템에서 다른 시스템으로 파일을 전송할 수 있습니다. 대부분의 ftp 클라이언트는 각 파일을 선택하지 않고 전체 디렉토리 (서브 디렉토리 포함)를 검색 할 수 있습니다. 다양한 선택이 있지만 파일 관리자의 위치 표시 줄에 ftp://your.hostname.com을 넣는 것은 대개 사용자 이름과 암호를 묻는 프롬프트이며 대부분의 OS에서 전체 디렉토리를 끌어다 놓을 수 있습니다.

관련 문제