Ruby拒绝关闭net / telnet中的连接并给出错误

问题描述

我正在使用下面的代码通过telnet访问我们的路由器,但在命令末尾却检索到奇怪的错误


require 'net/telnet'

USER = 'admin'
PASS = "12c@cddf"

local = Net::Telnet::new("Host" => "10.10.13.3","Binmode" => true,"Output_log" => "output_log.log",'Prompt' => /[$%#,:] \z/n
                            )

  sleep 3
  local.cmd("admin"){
    |c| print c
      local.cmd("12c@cddf"){
        |c| print c
          local.cmd("enable"){
            |c| print
              local.cmd("quit"){
                |c| print c
                  local.cmd("y"){
                    |c| print c
                  }
              }
          }   
      }
      
  }
local.close

最后一个答复如下,我该如何解决? cmd使用错了吗,我应该再使用其他东西吗?

  Configuration console exit,please retry to log on
/Users/sedcvf/.rvm/rubies/ruby-2.2.0/lib/ruby/2.2.0/net/telnet.rb:560:in `readpartial': Connection reset by peer (Errno::ECONNRESET)
    from /Users/sedcvf/.rvm/rubies/ruby-2.2.0/lib/ruby/2.2.0/net/telnet.rb:560:in `waitfor'
    from /Users/sedcvf/.rvm/rubies/ruby-2.2.0/lib/ruby/2.2.0/net/telnet.rb:694:in `cmd'
    from home.rb:27:in `block (4 levels) in <main>'
    from /Users/sedcvf/.rvm/rubies/ruby-2.2.0/lib/ruby/2.2.0/net/telnet.rb:694:in `block in cmd'
    from /Users/sedcvf/.rvm/rubies/ruby-2.2.0/lib/ruby/2.2.0/net/telnet.rb:593:in `waitfor'
    from /Users/sedcvf/.rvm/rubies/ruby-2.2.0/lib/ruby/2.2.0/net/telnet.rb:694:in `cmd'
    from home.rb:25:in `block (3 levels) in <main>'
    from /Users/sedcvf/.rvm/rubies/ruby-2.2.0/lib/ruby/2.2.0/net/telnet.rb:694:in `block in cmd'
    from /Users/sedcvf/.rvm/rubies/ruby-2.2.0/lib/ruby/2.2.0/net/telnet.rb:593:in `waitfor'
    from /Users/sedcvf/.rvm/rubies/ruby-2.2.0/lib/ruby/2.2.0/net/telnet.rb:694:in `cmd'
    from home.rb:23:in `block (2 levels) in <main>'
    from /Users/sedcvf/.rvm/rubies/ruby-2.2.0/lib/ruby/2.2.0/net/telnet.rb:694:in `block in cmd'
    from /Users/sedcvf/.rvm/rubies/ruby-2.2.0/lib/ruby/2.2.0/net/telnet.rb:593:in `waitfor'
    from /Users/sedcvf/.rvm/rubies/ruby-2.2.0/lib/ruby/2.2.0/net/telnet.rb:694:in `cmd'
    from home.rb:21:in `block in <main>'
    from /Users/sedcvf/.rvm/rubies/ruby-2.2.0/lib/ruby/2.2.0/net/telnet.rb:694:in `block in cmd'
    from /Users/sedcvf/.rvm/rubies/ruby-2.2.0/lib/ruby/2.2.0/net/telnet.rb:593:in `waitfor'
    from /Users/sedcvf/.rvm/rubies/ruby-2.2.0/lib/ruby/2.2.0/net/telnet.rb:694:in `cmd'
    from home.rb:19:in `<main>'

如何清除该错误

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)