我通常打开一个本地 tmux 会话,通过 ssh 连接到多个远程 tmux 会话。这些实验室机器运行连续回归。当笔记本电脑整夜进入睡眠状态时,管道会因 ssh 会话而中断(预期)。第二天早上,我不得不手动重新启动每个窗口。有没有办法让 tmux 自动判断机器已重新联机并尝试重新连接到每个窗口中的 ssh 会话?
有点像 vnc 查看器,当机器重新上线时会自动重新连接。
答案1
你可以在每个窗口中运行这样的命令:
while :; do ssh $i tmux a; sleep 1; done
或者编写一个脚本来定期检查窗口并在必要时使用respawn-pane
或respawn-window
重新启动它们。