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

Perl 需要使用Net::SSH::Expect模块提供密码/是/否交互的帮助吗,perl,Perl,好的,我在这里寻找的是做以下事情 登录到远程服务器 执行一些cmd 交互,例如是/否,以生成密钥 CPAN文档是一个很好的资源 正如我在前面与您讨论的,本模块是。使用其中的一些示例 要为服务器配置Net::SSH::Expect: my $ssh = Net::SSH::Expect->new ( host => "myserver.com", password=> 'pass87word', user => 'bnegrao'

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

  • 登录到远程服务器
  • 执行一些cmd
  • 交互,例如是/否,以生成密钥
  • 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();
    
    如果你有更具体的问题,你应该问,因为仅仅问一些例子并不能真正帮助你完成任务。文档也非常完整,因此您应该在那里查看。

    我遇到的问题是“SSHAuthenticationError登录超时”。看起来远程服务器的SSH密钥已经在服务器中,因此我不必进行身份验证。很好。。