在 Perl 中,我尝试 ftp 一个文件,但远程服务器中的文件大小为零。
$ftp = new Net::FTP($URL);
$ftp->put($local_file, $remote_file);
我确定本地文件不是空的,但是为什么ftp-ed文件是空的呢?
在 Perl 中,我尝试 ftp 一个文件,但远程服务器中的文件大小为零。
$ftp = new Net::FTP($URL);
$ftp->put($local_file, $remote_file);
我确定本地文件不是空的,但是为什么ftp-ed文件是空的呢?
你检查过文档吗?
http://search.cpan.org/dist/libnet/Net/FTP.pm
具体来说,你需要登录,即使你是匿名连接,你应该检查每个代码的返回码。
以下是 CPAN 页面的概要:
use Net::FTP;
$ftp = Net::FTP->new("some.host.name", Debug => 0)
or die "Cannot connect to some.host.name: $@";
$ftp->login("anonymous",'-anonymous@')
or die "Cannot login ", $ftp->message;
$ftp->cwd("/pub")
or die "Cannot change working directory ", $ftp->message;
$ftp->get("that.file")
or die "get failed ", $ftp->message;
$ftp->quit;
要找出您遇到的问题,请按如下方式修改您的代码:
$ftp = new Net::FTP($URL);
$ftp->put($local_file, $remote_file) or die $ftp->message;
这种修改很可能会为您提供足够的信息来解决问题。