我使用 ssh 连接到远程服务器。在本地和远程计算机上,tmux 在 bash 启动时自动启动。
有没有办法在远程启动 tmux 会话之前分离本地计算机上的 tmux?
更新
并非所有远程计算机都会启动 tmux。我只需要那些启动的技巧,即如果远程未启动,我想将 tmux 会话保存在本地计算机上。
答案1
您可以制作一个使用 detach -E 分离并运行 ssh 的脚本,如下所示:
#!/bin/sh
if [ -n "$TMUX" ]; do
tmux detach -E "ssh \"$@\""
else
ssh "$@"
fi
您可以直接运行它或将其别名为 ssh。
请注意,如果您想将标志参数传递给 ssh,这将不起作用。