594 字
3 分钟
Tmux终端复用工具

在部署mx-space时,正在pnpm build,ssh断开连接了,有点没绷住,所以看了一下在服务器上创建持久化会话,SSH 断连后会话仍在后台运行的方法。

screen和tmux对比#

常用的终端复用器有两个,screentmux,询问AI对比了两个工具的区别,区别如下。

基础功能对比#

功能tmuxscreen胜出方
分屏支持✅ 垂直/水平分屏,自由调整布局❌ 仅支持水平分屏tmux
会话管理✅ 会话可命名、分组、动态附加/分离✅ 基础会话管理tmux(更灵活)
快捷键⌨️ 前缀键默认 Ctrl+b,高度可定制⌨️ 前缀键默认 Ctrl+a,定制性低tmux
脚本化控制✅ 支持 CLI 和配置文件自动化❌ 有限支持tmux
滚动回查✅ 支持鼠标滚动和快捷键翻页❌ 需进入拷贝模式tmux
状态栏✅ 可定制状态栏(显示时间、主机等)❌ 无状态栏tmux

进阶能力对比#

场景tmuxscreen
网络恢复✅ 会话持久化,SSH 断连无影响✅ 同等能力
窗格同步输入✅ 多个窗格同步输入(set synchronize-panes❌ 不支持
插件生态✅ 丰富插件(如 tmux-resurrect 会话保存)❌ 无插件
性能⚡️ 轻量,响应快⚡️ 同等轻量
学习曲线📈 略高(功能多)📉 更简单(适合新手)

tmux基础用法#

安装

Terminal window
# Ubuntu or Debian
sudo apt-get install tmux

启动#

Terminal window
tmux

也可以在建立时显式地说明session的名字,这个名字可以用于解绑后快速的重新进入该session:

Terminal window
tmux new -s your-session-name

分离#

在tmux窗口中,按下ctrl+b d或者输入以下命令,就会将当前session与窗口分离,session转到后台执行:

Terminal window
tmux detach

会话管理#

tmux ls:查看所有会话

tmux attach -t 0 :恢复编号为0的会话

tmux attach -t mysession:恢复命名会话

tmux kill-session -t mysession:终止指定会话

窗口操作(前缀键默认为 Ctrl+b#

快捷键功能
Ctrl+b c新建窗口
Ctrl+b 数字切换到指定编号窗口
Ctrl+b n切换到下一个窗口
Ctrl+b p切换到上一个窗口
Ctrl+b &关闭当前窗口
Ctrl+b ,重命名当前窗口

重命名session#

Terminal window
tmux rename-session -t old-session new-session

Ctrl+b $:重命名当前会话

参考#

  1. Tmux教程 (一文就够)-CSDN博客
Tmux终端复用工具
https://fuwari.cbba.top/posts/tmux终端复用工具/
作者
Chen_Feng
发布于
2025-08-12
许可协议
CC BY-NC-SA 4.0