需要帮助使用Net :: SSH :: Expect模块提供密码/是/否交互

时间:2013-11-22 10:12:54

标签: perl

好的,我在这里寻找的是做以下事情。

  
      
  1. 登录远程服务器。
  2.   
  3. 执行几厘米。
  4.   
  5. 交互,例如是/否,以生成密钥。
  6.   

1 个答案:

答案 0 :(得分:1)

CPAN文档是一个好资源

正如我之前在perl chat中与您讨论的那样,此模块为well documented on CPAN。使用那里的一些例子......

为您的服务器配置Net::SSH::Expect

my $ssh = Net::SSH::Expect->new (
    host => "myserver.com",
    password=> 'pass87word',
    user => 'bnegrao',
    raw_pty => 1
);

使用密码登录:

my $login_output = $ssh->login();
if ($login_output !~ /Welcome/) {
    die "Login has failed. Login output was $login_output";
}

运行命令:

my $ls = $ssh->exec("ls -l /");
print($ls);

my $who = $ssh->exec("who");
print ($who);

关闭连接:

$ssh->close();

你应该问你是否有更具体的问题,因为只是问一些例子并不能真正帮助你完成任务。文档也很完整,所以你应该在那里查看。