![从 tmux 分离并旋转到 ssh 而不删除 exec?](https://linux22.com/image/82664/%E4%BB%8E%20tmux%20%E5%88%86%E7%A6%BB%E5%B9%B6%E6%97%8B%E8%BD%AC%E5%88%B0%20ssh%20%E8%80%8C%E4%B8%8D%E5%88%A0%E9%99%A4%20exec%EF%BC%9F.png)
一段时间以来,我一直在使用默认启动的 tmux 作为 shell 的一部分,并且发现它非常方便。同时,从 tmux 内部 ssh 到另一个系统并不理想,因为我最终得到了嵌套的多路复用器。我的解决方案是使用不同的终端——或者更确切地说,使用不同的参数启动相同的终端,这样它就不会启动 tmux 并提示我输入一台机器来进行 ssh。
这可行,但这意味着每个终端窗户仅适用于我启动它的机器。从 tmux 分离会删除终端,因为它已被执行;同样,注销远程 ssh 会话并且终端会丢失。
在 tmux 会话之间切换很容易,我可以从 tmux 内部更改 tmux 所附加的会话。我想做的是从 tmux 内部选择 ssh 到另一台机器,从而将 shell 中的主进程从 tmux 交换到 ssh 会话。我可以想象两种方式可能工作:
- 以某种方式交换执行的进程。
- 启用某种 tmux 功能,该功能将通常的多窗格界面作为后台,并在前台将所有输入/输出传递给它,直到它终止,然后返回到 tmux 会话。
但我不知道这两者是否真的可以实现。或者也许还有另一种方法?这个工作流程如何实现?