Ben sadece başarısız olması halinde, bir uzak sunucuda bir komut dosyası yürütmeye çalışırken, bir kod parçası var, bir takip çağrısı yapmak istiyorum, bu hayal edin:Ruby's Net :: SSH kütüphanesi ile çıkış durumu nasıl alınır?
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
I (stdout ve stderr'ın benim örneğimde yazıldığını görmezden gelir) - ama ilk satırın Ruby'nin false
olarak çalışmasını beklediğim 0
ile çıkması ve "Çıkış Hatası" nı göstermesi (yani mantığın yanlış olması, üçüncül ihtiyaçlar) ters çevrilecek) - ama ikinci satırın karşıt durumdan çıkması gerekiyor ve değil.
Bu belgede, bunu nasıl yapacağım konusunda hiçbir şey bulamıyorum ve yanlış yaptığımdan endişeleniyorum.
Vay, bu serin Net :: SSH (Yakut 1.9+) içine bu benim versiyonunu yamalı ettik. Teşekkürler. – sarnold
flitzwald, bu harika - Keşke retrospektif olarak bir ödül veya bir şey ekleyebilirdim! Çok teşekkürler! –
Çok teşekkür ederim. Mükemmel çalışıyor. Bu Net :: SSH olmalıdır. –