![自动继续尝试连接到 telnet 主机,直到成功(通过 ssh)](https://linux22.com/image/158137/%E8%87%AA%E5%8A%A8%E7%BB%A7%E7%BB%AD%E5%B0%9D%E8%AF%95%E8%BF%9E%E6%8E%A5%E5%88%B0%20telnet%20%E4%B8%BB%E6%9C%BA%EF%BC%8C%E7%9B%B4%E5%88%B0%E6%88%90%E5%8A%9F%EF%BC%88%E9%80%9A%E8%BF%87%20ssh%EF%BC%89.png)
我想通过远程主机上的 telnet 自动登录。问题是,会话在可用telnet
后几秒钟即可访问,即在准备好之前将失败。如何自动重试直至成功?ssh
user@hostA telnet hostB
hostB
connect
答案1
你可以告诉你的 shell 循环直到命令成功;在bash中:
until ssh user@hostA telnet hostB; do sleep 2; done
当您从 成功注销时hostB
,循环将退出。如果telnet
与 hostB 的会话被强制断开(重新启动;网络中断),循环将恢复/继续。