
FTP 명령줄 유틸리티를 사용하면 FTP 명령을 사용하여 파일을 가져 오기 위해 각 연속 디렉터리에 들어가야 get
하는 것과는 반대로 절대 경로가 있는 파일을 가져올 수 있는지 궁금합니다 .cd
내가 입력할 때
ftp> get pub/sdc.tgz
또는 심지어 이것(pub 앞에 슬래시가 한두 개 있음)
ftp> get /pub/sdc.tgz
파일을 찾을 수 없다고 합니다.
local: /pub/sdc.tgz remote: /pub/sdc.tgz
ftp: local: /pub/sdc.tgz: No such file or directory
그러나 내가 대신 그렇게 할 때
ftp> cd pub
ftp> get sdc.tgz
그것은 완전히 잘 작동합니다.
절대 경로가 있는 파일을 얻으려면 ftp 명령줄에 올바른 구문이 있습니까? 아니면 먼저 경로를 cd
입력 해야 합니까?pub
(참고: 제가 하려는 것은 매일 실행되는 PERL 스크립트를 사용하여 파일을 FTP 서버에 저장한 다음 1. 파일을 가져오는 이후 스크립트를 사용하는 것입니다. -- 저는 이 스크립트를 사용하는 것을 반대하지 않습니다 wget
-- 2. FTP와 관련하여 파일을 얻은 후 삭제합니다. 두 번째 스크립트에서 파일을 삭제하여 나중에 첫 번째 스크립트가 파일을 FTP 서버에 저장하는 데 문제가 발생하도록 하고 싶습니다. 두 번째 스크립트는 파일이 없기 때문에 오류가 발생했다는 것을 알게 될 것입니다. 다른 이름으로 저장할 수도 있지만 FTP 서버를 다른 날의 수많은 파일로 오염시키고 싶지 않습니다.)
답변1
FTP의 Get을 사용하고 로컬 경로/파일 이름을 지정하지 않으면 원격 파일과 동일한 경로/이름을 사용하려고 하기 때문입니다.
이 오류:
ftp: local: /pub/sdc.tgz: No such file or directory
LOCAL 컴퓨터에서 파일을 찾을 수 없다는 메시지가 나타납니다. 따라서 내 가정은 로컬 드라이브의 루트에 "pub" 폴더가 없다는 것입니다.
통사론:얻다원격 파일 [로컬 파일]
매개변수:
원격 파일 - 복사할 원격 파일을 지정합니다.
local-file - 로컬 컴퓨터에서 사용할 이름을 지정합니다.지정하지 않으면 파일에 원격 파일 이름이 지정됩니다.
그러니 다음과 같이 시도해 보세요:
ftp> get pub/sdc.tgz c:\temp\sdc.tgz
아니면 아마도
ftp> get pub/sdc.tgz .\sdc.tgz
현재 폴더에 다운로드합니다.
보다여기자세한 내용은얻다용법.
관련 SU 질문:ftp get 명령을 사용하여 대상을 지정할 수 있습니까?
답변2
ncftpget
클라이언트 시스템에 설치할 수 있는 경우 절대 경로를 사용하는 를 사용할 수 있습니다 .
또한 Perl을 사용하는 경우 다음을 살펴볼 수 있습니다.FTP 모듈.