2013-07-03 92 views
1

我在while循環運行以下命令,通過計算機的列表會:我可以通過ssh命令獲得某種返回值嗎?

ssh -n -o ConnectTimeout=10 hostname 'smbios-sys-info' >> MACHINEINFO 

的偉大工程。除了遇到失敗或超時的連接外,它會將超時錯誤消息輸出到MACHINEINFO中。我反而希望它在沒有混淆MACHINEINFO的情況下靜默失敗,而是將失敗連接的主機名寫入另一個文件,如FAILEDMACHINES。

我假設要做這樣的事情,我需要從ssh得到一個返回值來確定連接和smbios-sys-info命令是否成功運行,如果沒有,輸出到FAILEDMACHINES。

回答

2

運行命令後,$?會給你結果代碼。

如果ssh成功,$?將是遠程命令的結果代碼,否則,它將返回255.

+0

哇,我對這個問題感到啞巴。很簡單。謝謝! – CptSupermrkt

+0

不要覺得傻 - 因爲這是一個合理的問題。 –

相關問題