我正在尝试建立telnet连接并发送强制重新启动然后终止连接的命令。到目前为止我有:
require 'net/telnet'
host = 192.168.20.11
connection = Net::Telnet::new("Host" => host)
connection.login("User")
connection.cmd("Reboot")
这可以实现并达到我想要的目的,但是程序然后等待来自reboot命令的反馈,因为它正在重启,因此程序因此失败。有没有办法可以发送命令然后关闭连接而无需等待反馈?这将使我能够继续完成整个过程。
答案 0 :(得分:0)
不幸的是,我没有看到任何记录来处理这个问题的方法。你可以用这样的东西伪造它:
begin
connection.cmd("String" => "Reboot", "Timeout" => 0.1)
rescue # I'm not sure what that will raise, but you should rescue that specific error here
nil
end
我不得不问,有没有办法可以使用ssh
而不是telnet
?