使用Net :: SFTP :: Foreign通过SFTP上传文件

时间:2017-07-10 13:40:11

标签: perl sftp net-sftp

我的本​​地计算机上有一个文件Test1.csv。我有一个Perl脚本通过SFTP连接将此文件复制到远程位置(home/inbound)。

以下是我的代码

use Net::SFTP::Foreign;

use warnings;
use strict;

my $host = "sftp.abcd.com";
my $sftp = Net::SFTP::Foreign->new($host, user => 'user10524', password => 'XXXX');
$sftp->error and die "Something bad happened: " . $sftp->error;

$sftp->put("Test1.csv", "/inbound") or die "put failed: " . $sftp->error;

但是当我运行程序时,我收到了这个错误:

  

输入失败:无法打开远程文件' / inbound':没有这样的文件

1 个答案:

答案 0 :(得分:3)

put的第二个参数是文件的路径,而不是目标文件夹的路径。

所以它应该是:

$sftp->put("Test1.csv", "/inbound/Test1.csv")