gpt4 book ai didi

perl - 如何使用 scp 从 Perl 脚本传输文件而无需密码?

转载 作者:行者123 更新时间:2023-12-03 07:13:31 24 4
gpt4 key购买 nike

我正在编写一个 Perl 脚本,需要使用 scp 在计算机之间传输文件。我了解公钥身份验证,但我需要脚本完全自动化,因此我无法在脚本运行之前访问计算机来设置 key 。

有没有办法从 Perl 脚本将密码传递给 scp 或从 Perl 脚本中设置 key ?

此脚本将作为构建脚本的一部分运行,该脚本还会重新镜像我需要运行该脚本的硬盘驱动器。所以我不能在每次项目构建时都在那里设置 key 。

最佳答案

您可以使用Net::SSH::Perl 。以下是您可以使用的示例代码。

#!/usr/bin/perl -w
use strict;
use Net::SSH::Perl
my $cmd = 'command';
my $ssh = Net::SSH::Perl->new("hostname", debug=>0);
$ssh->login("username","password");
my ($stdout,$stderr,$exit) = $ssh->cmd("$cmd");
print $stdout;

此代码将简单地在远程计算机上运行给定的“命令”,并在本地系统上为您提供输出。因此,为了代替 scp,您可以使用此脚本和命令“cat”来捕获本地系统上“cat filename”的输出,并将输出重定向到本地系统上的文件中。

希望这有帮助。

关于perl - 如何使用 scp 从 Perl 脚本传输文件而无需密码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3824878/

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