我正在尝试使用 perl 将 SSH 连接到机器并发出一些命令...
my $ssh = Net::SSH::Perl->new($host);
$ssh->login($user,$pass);
my($stdout, $sterr, $exit) = $ssh->cmd($cmd);
print "$stdout \n"
这是一般的想法,但我仍然被提示输入密码。我也尝试过使用python,也无法通过密码提示。另一方面,Expect 可以很好地处理密码。有谁知道会导致这种情况的原因是什么?
编辑:附加信息
我在一台 linux 机器上使用 putty,然后通过 ssh 连接到更多的 linux 机器上。使用上面的 perl 代码,用户名设置正确,但我最终不得不每次手动输入密码。