运行命令直到它停止失败

Ste*_*Mai 7 linux ssh command-line-interface

我想运行一个命令直到它成功完成,然后停止。我知道我可以设置一个 bash 循环来做到这一点,但我很好奇是否有任何便携式方法可以做到这一点,类似于watch -n5我正在寻找的那样。

用例:我正在尝试通过 SSH 连接到可能尚未启动的服务器。

Bar*_*art 5

# xxx.xxx.xxx.xxx = ipaddr ssh 主机
直到 [`nmap --open -p 22 xxx.xxx.xxx.xxx |grep -c "ssh"` -eq 1]
做 
睡觉 4
完毕 

# ssh 的东西在这里


EEA*_*EAA 4

只需将所述 bash 循环包装在脚本中,用于$1指定要执行的实际命令和$2任意睡眠值。这样做,您将能够运行如下命令:

$ reallyrunit "ls" 5
Run Code Online (Sandbox Code Playgroud)