Mac에서 명령줄을 통해 연결된 FTP 서버의 디렉터리를 복사하고 싶습니다.
내가 가지고 있다고 가정합니다 file
. files2
모든 file
하위 디렉터리와 파일이 원래 디렉터리와 동일한 디렉터리에 있기를 원합니다 . 이것을 달성하는 가장 쉬운 방법은 무엇입니까?
편집하다:
을 사용하면 mget
모든 mput
파일을 다운로드하고 다른 폴더에 다시 업로드할 수 있지만 이는 확실히 내가 원하거나 필요한 것이 아닙니다. (데스크톱 클라이언트에서 이 다운로드 업로드 방법을 사용하여 중복을 피하기 위해 이 질문을 시작했습니다.)
답변1
당신이 가지고 있는 것은 유닉스 명령줄이 아니며, FTP 세션입니다. FTP는 주로 일반적인 파일 관리가 아닌 파일 업로드 및 다운로드에 사용되며 서버에서 임의의 명령을 실행할 수 없습니다. 특히, 제가 아는 한, 서버에서 파일 복사를 실행할 수 있는 방법은 없습니다. 파일을 다운로드한 다음 다른 이름으로 업로드하는 것뿐입니다.
일부 서버는 FTP 프로토콜에 대한 확장을 지원하며 이러한 확장 중 하나를 사용하면 원격 파일을 복사할 수 있습니다. 서버가 어떤 확장을 지원하는지 시험해 help site
보세요 .remotehelp
Unix 명령줄을 원하면 rsh를 통한 원격 셸 액세스가 필요합니다(아르 자형표현쉿ell) 또는 21세기 SSH(에스에쿠르쉿잘). 웹 호스트인 경우 SSH 액세스를 제공하는지 확인하세요. 그렇지 않은 경우 시스템 관리자에게 문의하세요. 그러나 대답이 '아니요'라고 해도 놀라지 마십시오. 일부 다중 사용자 설정에서는 명령줄 액세스가 보안 허점이므로 이를 제공하지 않는 타당한 이유가 있을 수 있습니다.
답변2
수행 방법은 다음과 같습니다.FTP:
# 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)
답변3
이제 이것은 잘못된 것이지만 주석 트리가 손실되지 않도록 삭제하지 않은 상태로 유지하십시오.
cp
-r
파일과 디렉터리를 복사합니다. 모든 것을 재귀적으로 복사하도록 플래그를 지정할 수 있습니다 . 다음이 포함된 폴더에서 file
:
$ cp -r file files2