的Net :: SFTP ::国际 - rput失败(在某种程度上)如果目标目录中存在

http://metacpan.org/pod/Net::SFTP::Foreign的Net :: SFTP ::国际 - rput失败(在某种程度上)如果目标目录中存在

my ($user, $password, $host) = @_; 

my ($source, $dest) = '/whatever';

my $sftp = Net::SFTP::Foreign->new(

user => $user,

host => $host,

password => $password,

more => [ -o => 'StrictHostKeyChecking no' ]

);

$sftp->rput(

$source, $dest,

overwrite => 1,

on_error =>

sub { print $sftp->error; }

);

如果$ DEST $主机,rput的ON_ERROR总是火灾和$ sftp-上存在>错误是“远程目录“/不管”已经存在”

尽管出现错误,rput进行,并递归复制目录,但taget主机上,它会得到下复制/不管,而不是超过 /不管。即我最终以/无论/什么。

这作为crumby解决办法,如果rput以前做过,但我真的不希望删除目标目录:

$sftp->rremove($dest); 

任何人有任何知道我做错了吗?我将所有的通配符我要传输的文件的更好,然后做一个foreach $文件(@glob_result){$ sftp->放(亚达,亚达)};?这似乎效率低下且容易出错。

回答:

该错误的预期,只是忽略它。

关于你的文件被转移到/whatever/whatever,我无法重现这个问题,至少在Net :: SFTP :: Foreign的development version。

当您设置$Net::SFTP::Foreign::debug = 2|4|64|4096|8192|32768时,您会得到什么?

回答:

来源应该./*和目标./。

my ($source, $dest) = ('/whatever/*','/whatever/'); 

我希望这个作品。

以上是 的Net :: SFTP ::国际 - rput失败(在某种程度上)如果目标目录中存在 的全部内容, 来源链接: utcz.com/qa/266825.html

回到顶部