当前位置: 首页 > 知识库问答 >
问题:

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

颜修真
2023-03-14

我的本地计算机上有一个文件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;

共有1个答案

巫马翰翮
2023-03-14

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

所以应该是:

$sftp->put("Test1.csv", "/inbound/Test1.csv")
 类似资料:
  • 我是个初学者。我编写了一个perl脚本,该脚本执行以下操作 -在当前日期之前在“/X01/ABCD/ABC_LOGS/ABCD_LOGS”下创建目录,如果尚未创建,则以“YYYYMMDD”的格式创建。即:如果脚本在“2013年1月1日”运行,则在该路径下创建目录“20130101”。因此,每当需要检查日志时,总是查找当前日期之前的目录。 我有一个困难的时间,想出一个解决方案,打印一个消息时,没有文

  • 我使用的是net::ftp::foreign,但我一直收到一个关于文件找不到的错误,我不确定是我的语法错了还是我误解了如何使用它。 我得到的错误是远程端不存在这样的文件,但我已经确认当我执行LS cmd时它们确实存在。 我的脚本有什么明显的错误导致它不能工作吗? 另外,我使用的是net::sftp::foreign因为net::sftp不会构建在运行10.7的MBP上

  • 在调用时,连接不会关闭,Perl脚本处于挂起状态,直到我手动终止进程。 下面是我在nohup.out文件中得到的错误。

  • 问题内容: 我已经通过ftp成功上传了文件,但是现在我需要通过SFTP进行上传。我可以成功连接到远程服务器,创建文件并写入文件,但是无法将现有文件从本地服务器上载到远程服务器。ftp_put是否不通过sftp连接触发? 我的代码用来写文件: 有没有人成功抓取本地文件并通过上述方法使用sftp上传?一个例子将不胜感激。 谢谢 问题答案: 通过上述方法(涉及sftp),您可以使用stream_copy

  • 有一个用例,我必须: 在我的应用程序中,在应用程序服务器上生成一个文件。让我们把这称为一台机器。(这是我的Java代码运行的地方,用来生成文件) 从应用程序本身,我希望使用SFTP将这个文件传输到一个固定路径(比如)的白名单服务器B 第1点和第2点是直截了当的。 现在有一个外部服务器C(我提供了它的凭据) 现在,应用程序正在服务器A上运行。 文件现在位于服务器B中的== 如何实现这种多次跳转的SF

  • 我正在使用JSCH从SFTP服务器下载文件。我使用单会话,多通道下载文件从不同文件夹位于SFTP。对于这个下载过程,我有一组排定的作业。每项工作将: 每次打开一个新通道()。通道名称:SFTP 使用方法获取要下载的文件总数的大小 如果size(Vector)大于零,则使用下载所有文件 最后关闭打开的通道。 在上面的过程中,大多数时候我得到的文件,找不到或没有这样的文件异常,并没有下载一些文件。 谁