我正在编写一个 Bash 脚本,通过 SSH 在远程计算机上执行多个命令。
问题是,当其中一台机器无法访问时,我希望脚本跳过并继续前进,它会一直卡住,直到很长一段时间后它会导致连接超时。
有没有办法在ssh
命令中设置更短的超时?
答案1
要指定超时(以秒为单位),请使用ConnectTimeout
中指定的选项ssh_config
手册页:
ssh -o ConnectTimeout=10 user@remotehost
要指定所有主机的超时,请将此配置添加到 ssh 配置文件中的通配符节中,通常~/.ssh/config
用于个人配置,或/etc/ssh/ssh_config
应用于系统范围:
Host *
ConnectTimeout 10