2012-05-18 2 views
0

실제로 Net :: FTP :: Recursive를 사용하여 디렉토리 구조를 다운로드하면 필요한 것에 적합합니다. 그러나 일부 폴더에는 100 개 이상의 파일이 있으므로 다운로드하는 데 오래 걸릴 수 있습니다. zip 파일은 다운로드가 빠르기 때문에 어떻게 할 수 있습니까? perl을 사용하여 원격 서버에 ftp를 연결하고 원격 서버/폴더에서 zip 파일을 다운로드하여 다운로드 할 수 있습니까? Perl의 원격 서버에 Zip 파일을 만드는 방법

use Net::Config; 
use Net::FTP::Recursive; 


$ftp = Net::FTP::Recursive->new("$hostname:$ftp_port", Debug => 0) 
or die "Cannot connect to $hostname: [email protected]"; 
$ftp->login($iLogin,$iPass) 
or die "failed ", $ftp->message; 
$ftp->binary() 
or die "Cannot set to Binary"; 
$ftp->cwd("/admin/packages/$fileName") 
or die "Cannot change working directory ", $ftp->message; 
$ftp->rget($fileName); 
#or die "Download Failed ", $ftp->message; 
$ftp->quit; 

내가 당신이 ZIP 명령을 실행하는 시스템에 SSH 접근이 필요 거라고 생각 시간

답변

1

사이트 (ARGS) 방법은 그것을 위해 설계되었습니다. 셸 명령을 보내 원격 서버에서 실행되도록 할 수 있습니다. http://perldoc.perl.org/Net/FTP.html#METHODS

그러나, FTP 서버의 대부분은 내가 행운을,

+0

안녕하세요, 독점적 인 유닉스 솔루션은 서버가 유닉스 또는 NT이기 때문에 그럴 수 없습니다. 내가 연결할 수있는 유일한 방법은 ftp입니다 –

+0

@ ThalesPereira,이 솔루션은 독점 유닉스 솔루션이 아닌 표준 FTP 프로토콜 당, 그것은 NT에서 작동해야합니다. – StanleyZ

+0

실제로 사이트 (args) 근무 =) 감사합니다. –

1

에 대한 여러분 모두 감사합니다. 그러나 그렇다면 SCP를 사용하여 파일을보다 안전하게 전송할 수 있습니다. FTP는 모든 것을 공개적으로 처리합니다.

감사합니다,

F.

+0

안녕, 서버는 유닉스 나 NT 때문에 독점 유닉스 솔루션이 늘 경우 일을 그 권한을 사용할 수 없습니다 알고, 그래서. 내가 연결할 수있는 유일한 방법은 ftp입니다. –

관련 문제