如何在关闭主终端窗口时保持tmux会话持续运行
关闭终端主窗口后保持tmux会话存活的可行性说明
问题背景
- 核心诉求:关闭主终端窗口后仍保持tmux会话存活,确认该需求是否可实现
- 实际运行规律:
- 关闭终端内非最后一个单个窗口/标签页时,tmux会话不会终止
- 存在2个及以上窗口/标签页时,关闭其中一个会话仍可正常运行
- 关闭会话内最后一个剩余窗口时,正在运行的tmux会话会直接终止
- 典型触发场景:通过ssh远程连接开启tmux会话后,点击iTerm2左上角关闭按钮退出程序时,正在运行的tmux会话直接终止
相关命令示例
❯ which goo goo: aliased to ssh -xt4C user@IP
iTerm2官方答复
你关闭的是窗格(window pane)而非窗口。关闭最后一个窗格时tmux会自动分离,因为不存在剩余窗格时tmux默认会自动分离,这和非tmux集成场景下的tmux行为一致。目前我认为tmux没有禁用该行为的配置,不过提出这类功能需求是合理的,需要tmux官方先实现该功能,后续我可以在iTerm2中添加对应支持。
结论
当前tmux原生暂未提供关闭最后一个窗格后仍保留会话的配置项,因此暂时无法直接实现该需求。需等待tmux官方新增对应功能后,配合iTerm2的适配更新才可实现。
内容的提问来源于stack exchange,提问作者alper
相关产品推荐
相关产品推荐

