gpt4 book ai didi

linux - 如果中途中断,ssh 会挂起

转载 作者:太空宇宙 更新时间:2023-11-04 10:47:12 25 4
gpt4 key购买 nike

如果 ssh 能够连接到远程机器,下面的代码假设重复打印“connected”,否则将打印“not-connected”。

#!/bin/bash
while [ "1" ]
do
ifconfig usb0 &>/dev/null
if [ "$(echo $?)" == "0" ]
then
sshpass -p passwd ssh -o ConnectTimeout=5 duser@10.1.1.3 sudo echo "connected"
else
echo "not-connected"
fi
sleep 0.2
done

远程机器通过usb0接口(interface)连接。我通过频繁拔插 usb 接口(interface)来测试这个脚本。问题是有时当我拔下 usb 接口(interface)时,代码卡在 ssh 上并且没有重复打印。我想如果 ssh 在执行过程中被中断,它就会卡住。我怎样才能克服这个?有人可以帮忙吗?

最佳答案

最明显的是它根本没有挂起。但是您打印连接的方式似乎是错误的。

这看起来很可疑

sshpass -p passwd ssh -o ConnectTimeout=5 duser@10.1.1.3 sudo grep "connected"

你想 grep 什么?

通常,如果您需要 grep 某些应用程序的输出,您需要通过管道来完成,例如

ls | grep“已连接”

关于linux - 如果中途中断,ssh 会挂起,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32644863/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com