gpt4 book ai didi

Perl - 在 Windows 上建立 SFTP 连接的最佳方法

转载 作者:行者123 更新时间:2023-12-02 09:13:05 25 4
gpt4 key购买 nike

我需要在 Windows 计算机上使用 SFTP 将文件放入远程目录中。我尝试过 Net::SFTP::Foreign,但无法使用它,因为它需要 IO::Pty,而 Windows 计算机上不可用。最好/最简单的方法是什么?

更新请求的信息:

以下是我正在使用的版本:

Net::SFTP::Foreign:v 1.89

Net::SSH2:v 0.69

Net::SFTP::Foreign::Backend::Net_SSH2:v 0.09

这是我的代码的要点:

$ssh2 = Net::SSH2->new();
$ssh2->connect($host) || die "connect failed";
$ssh2->auth_password($user, $pass) || die "password auth failed";
$sftp = Net::SFTP::Foreign->new(ssh2 => $ssh2,
backend => 'Net_SSH2');
$sftp->error and
die "Unable to stablish SFTP connection: ". $sftp->error;

现在我只是想建立连接。我需要将文件放在服务器上。我收到的错误如下:

Net::SSH2::timeout(ss, timeout) at C:/Strawberry/perl/site/lib/Net/SSH2.pm line 111, <STDIN> line 1.

最佳答案

首选使用方式Net::SFTP::Foreign在Windows中可能是使用Net::SFTP::Foreign::Backend::Net_SSH2后端(更新:CPAN 提供的 Perl 模块)使用 Net::SSH2在幕后(它已经包含在 Strawberry Perl 中,更新:否则,您将需要自己构建和安装 libssh2,这有时并不像应有的那么容易)。

另一个选择是tell Net::SFTP::Foreign 使用 plink 命令运行 SSH 连接(在模块文档中搜索 plink)。 更新:plinkPuTTY 应用程序发行版的一部分,这是一个非常流行的 SSH 客户端,可能已经安装在该计算机中。

最后你也可以尝试使用Net::SSH::Any它为 Net::SFTP::Foreign 提供自己的后端,并且可以在多个 SSH 客户端和模块之上运行...但它仍处于测试阶段!

关于Perl - 在 Windows 上建立 SFTP 连接的最佳方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49889341/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com