명령 줄을 통해 Mac에서 연결된 FTP 서버의 디렉터리를 복제하고 싶습니다.
file
이 있다고 가정 해 보겠습니다. 가지고 싶다 files2
file
의 모든 하위 디렉토리 및 파일이 원본과 동일한 디렉토리에 있습니다. 이것을 달성하는 가장 간단한 방법은 무엇입니까?
편집하다:
mget
및 mput
를 사용하면 모든 파일을 다운로드하고 다른 폴더에 다시 업로드 할 수 있지만 이것은 확실히 내가 원/필요한 것이 아닙니다 (이 다운로드 업로드와 중복을 피하기 위해이 질문을 시작했습니다. dektop 클라이언트의 방법)
가지고있는 것은 유닉스 명령 줄이 아니라 FTP 세션입니다. FTP는 주로 파일을 업로드 및 다운로드하도록 설계되었으며 일반 파일 관리를 위해 설계되지 않았으며 서버에서 임의의 명령을 실행할 수 없습니다. 특히 내가 아는 한 서버에서 파일 복사를 트리거 할 수있는 방법이 없습니다. 파일을 다운로드 한 다음 다른 이름으로 업로드하기 만하면됩니다.
일부 서버는 FTP 프로토콜에 대한 확장을 지원하며 이러한 확장 중 하나를 사용하여 원격 파일을 복사 할 수 있습니다. help site
또는 remotehelp
을 사용하여 서버에서 지원하는 확장 프로그램을 확인하세요.
유닉스 명령 줄을 원하면 rsh (r emote sh ell) 또는 더 일반적으로 21 세기 ssh (s ecure sh ell). 웹 호스트 인 경우 ssh 액세스를 제공하는지 확인하십시오. 그렇지 않으면 시스템 관리자에게 문의하십시오. 그러나 대답이 '아니요'인 경우 놀라지 마십시오. 명령 줄 액세스는 일부 다중 사용자 설정에서 보안 위반이 될 수 있으므로 제공되지 않는 합법적 인 이유가있을 수 있습니다.
lFTP 로 수행하는 방법은 다음과 같습니다.
# lftp ftp_Host
user ftp_user ftp_pass
mirror source target (download entire directory tree)
mirror -R source target (reverse mirror; upload entire directory tree)
지금은 잘못되었지만 댓글 트리가 손실되지 않도록 삭제 취소 상태로 유지
cp
은 파일과 디렉토리를 복사합니다. -r
플래그를 사용하여 모든 것을 재귀 적으로 복사합니다. file
이 포함 된 폴더에서 :
$ cp -r file files2