1

我在 while 循环中运行以下命令,遍历机器列表:

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

效果很好。除非我遇到连接失败或超时,否则它将超时错误消息输出到 MACHINEINFO。相反,我希望它在不混淆 MACHINEINFO 的情况下静默失败,而是将失败连接的主机名写入另一个文件,如 FAILEDMACHINES。

我假设要做这样的事情,我需要从 ssh 获取返回值,以确定连接和 smbios-sys-info 命令是否成功运行,如果没有,则输出到 FAILEDMACHINES。

4

1 回答 1

2

运行命令后,$?会给你结果代码。

如果 ssh 成功,$? 将是远程命令的结果码,否则返回 255。

于 2013-07-03T21:38:02.913 回答