我发现有人保持了SSH会话的活动
ssh -f -D $port $SSH_HOST "
if [ -f ~/.tunnel ]; then
rm ~/.tunnel;
fi;
while [ ! -f ~/.tunnel ]; do
echo > /dev/null;
done
" &并终止SSH会话。
ssh $SSH_HOST "touch ~/.tunnel" 谢谢。
发布于 2019-02-06 14:41:51
Simple改进
该技术允许您切断来自远程计算机的连接。我建议你做些改变
sleep,没有必要在等待时抛出CPU时间Do你需要这个吗?
如果您只想终止会话,我将避免在您的问题中使用以下方法:
SSH -N -D $port $SSH_HOST &这将设置没有shell的连接作为后台任务(-N禁用shell,&使其成为后台任务)。
您可以使用$!获得(本地) PID,并使用kill将其杀死。
例:
SSH -N -D $port $SSH_HOST &
TUNNEL_PID=$!
# Do some other stuff
kill $TUNNEL_PID发布于 2019-02-06 15:01:44
除了@PhilipCouling所写的内容外,还有一个奇怪但有效的小实用程序,当交互式终端会话保持打开时,旋转器,很有用。你在远程主机上运行它。它做得不多,但每隔N秒钟就向本地客户端发送一个虚拟数据包(例如,我使用N= 120 )。假人保持了连接的活力。
不知道这是不是你想要的东西,但它就在这里。
https://unix.stackexchange.com/questions/499055
复制相似问题