尝试使用Perl连接到SFTP服务器但不能。试过下面的代码,如果你发现代码中有任何错误,请告诉我。
use Net::SFTP::Foreign;
my $host = 'test.rebex.net';
my $sftp = Net::SFTP::Foreign->new($host);
$sftp->die_on_error("Unable to establish SFTP connection");
以上代码给出错误:
'ssh'未被识别为内部或外部命令,可操作 程序或批处理文件。无法建立SFTP连接:连接 远程服务器在Sftp-Foreign.pl第11行被破坏。
我尝试过的另一个代码:
use Net::SFTP::Foreign;
use Net::SSH2;
my $ssh2 = Net::SSH2->new();
my $host = 'test.rebex.net';
my $user = 'demo';
my $pass = 'password';
$ssh2->connect($host)
or die "connect failed";
$ssh2->auth_password($user, $pass)
or die "password auth failed";
my $sftp = Net::SFTP::Foreign->new(ssh2 => $ssh2,
backend => 'Net_SSH2');
$sftp->error and
die "Unable to stablish SFTP connection: ". $sftp->error;
$sftp->get("foo", "foo") or die "get failed: " . $sftp->error;
这给出了以下错误:
在Perl_sftp_ssh2.pl第9行连接失败。
我尝试使用Putty连接到服务器,这样可以正常工作。请帮忙。提前谢谢。