我有一段代码,只是试图在远程服务器上执行一个脚本,如果它失败了,我想打一个后续电话,想象一下:
require 'rubygems'
require 'net/ssh'
require 'etc'
server = 'localhost'
Net::SSH.start(server, Etc.getlogin) do |ssh|
puts (ssh.exec("true") ? 'Exit Success' : "Exit Failure")
puts (ssh.exec("false") ? 'Exit Success' : "Exit Failure")
end
我希望(忽略在我的人为示例中打印的 stdout 和 stderr) - 但是第一行应该退出0
,我希望 Ruby 会与之交互false
并显示“退出失败”(当然,所以逻辑是错误的,三元需要被翻转)-但第二行应该以相反的状态退出,但事实并非如此。
我什至在文档中找不到有关如何执行此操作的任何内容,而且我有点担心我可能做错了吗?!