
tmux 新手全指南:会话、窗口、分屏、复制、恢复一次搞定
从安装到进阶,把 tmux 的会话/窗口/窗格、复制模式、同步输入、配置与恢复完整讲清;覆盖 macOS、Linux、WSL,并配大量 SVG 示意图。
tmux 新手全指南:会话、窗口、分屏、复制、恢复一次搞定
你读完这篇,会从“只会开终端”变成“能稳定管理一堆后台任务”的人。tmux 的本质就一句话:让你的终端永不下班。最大的坑只有一个:关窗口 != 退出会话,搞清楚“detach/attach”你就赢了一半。
这篇是完整教程,带你从 0 建起可长期常驻的终端工作台,包含配置、恢复、同步输入、排错,以及大量图示。
0. 准备:安装 tmux
目的: 在你的系统上安装 tmux,并确认版本。
操作:
macOS:
brew install tmuxUbuntu/Debian:
sudo apt-get update && sudo apt-get install -y tmuxCentOS/Rocky:
sudo yum install -y tmuxArch:
sudo pacman -S tmuxWindows(推荐 WSL2):
wsl --install进入 WSL 后再用 apt 安装。
你应该看到:
tmux -V输出类似 tmux 3.x。
失败怎么办:
command not found:确认包管理器是否存在,或在 WSL 内执行。- 无权限:联系管理员或用有 sudo 的账户。
1. 先记住三件事:会话、窗口、窗格
目的: 知道 tmux 的三层结构,避免把“窗口”和“会话”混成一团。
- Session(会话):最大的容器,一般一个项目一个会话。
- Window(窗口):会话里的多个“标签页”。
- Pane(窗格):窗口里的分屏区域。
2. 启动你的第一个会话
目的: 创建一个会话,把任务放进 tmux。
操作:
tmux new -s work你应该看到:
- 进入一个新的终端界面
- 底部出现状态栏(默认绿色)
失败怎么办:
- 提示已存在:换一个名字,或用
tmux attach -t work直接进入。
3. 学会“detach / attach”这两个动作
目的: 让会话在后台继续跑,你断网/关机也不影响。
操作:
- 退出但不中断:
Ctrl+b然后d - 查看会话列表:
tmux ls- 重新进入:
tmux attach -t work你应该看到:
- detach 后提示:
[detached (from session work)] tmux ls有一行work: 1 windows (created ...)
失败怎么办:
no sessions:说明当前没有会话,重新tmux new -s work。
4. 窗口操作:像浏览器标签一样切换
目的: 把不同任务拆成不同窗口。
操作:
- 新建窗口:
C-b c - 列出窗口:
C-b w - 切换窗口:
C-b n/C-b p - 重命名窗口:
C-b ,
你也可以用命令:
tmux new-window -n editor你应该看到:
- 状态栏里窗口列表发生变化
失败怎么办:
- 快捷键没反应:先按
C-b ?查看当前键位,再试一次。
5. 窗格分屏:把一个窗口切成多个视角
目的: 一边跑服务,一边看日志/编辑。
操作:
- 垂直分屏:
C-b % - 水平分屏:
C-b " - 在窗格间切换:
C-b o或C-b 方向键 - 关闭当前窗格:在窗格里执行
exit或C-d
你也可以命令方式分屏:
tmux split-window -h你应该看到:
- 一个窗口被分成多个区域
- 光标只在一个窗格里活动
失败怎么办:
- 分屏后太小:在命令模式输入
C-b : resize-pane -L 10之类进行调整。
6. 前缀键与快捷键的基本逻辑
目的: 理解为什么要先按 C-b,避免“按了没反应”。
tmux 的控制命令都需要先按 前缀键。默认前缀是 C-b(Ctrl + b)。按下前缀后,tmux 等待下一个键,决定执行哪个命令。
你可以用下面命令查看当前前缀表:
tmux lsk -Tprefix -N7. 复制模式与滚屏
目的: 在 tmux 里像终端一样向上翻历史并复制。
操作:
- 进入复制模式:
C-b [ - 移动光标:方向键 / PageUp / PageDown
- 开始选择:
Space - 复制并退出:
Enter - 粘贴:
C-b ]
你应该看到:
- 进入复制模式后,光标可移动
- 选中区域高亮
失败怎么办:
- 选不中:你的键位可能是 vi 模式,执行
tmux list-keys -Tcopy-mode查看当前绑定。
8. 鼠标与滚轮支持(推荐开启)
目的: 用鼠标滚轮滚屏、点击切换窗格。
操作: 在 ~/.tmux.conf 加一行:
set -g mouse on然后重载配置:
tmux source-file ~/.tmux.conf你应该看到:
- 鼠标滚轮可以滚历史
- 点击窗格即可切换
失败怎么办:
- 仍旧无效:确认你在 tmux 里(
[ -n "$TMUX" ] && echo inside tmux)。
9. 会话管理:用命令精准控制
目的: 管理多个会话,快速切换。
操作:
tmux lstmux attach -t worktmux rename-session -t work ops也可以用“存在即进入,不存在就创建”:
tmux new -As work你应该看到:
tmux ls显示所有会话- 重命名后列表更新
失败怎么办:
- 名字冲突:先
tmux ls确认名称。
10. 同步输入:一条命令发给所有窗格
目的: 适合同时执行多台机器或多进程命令。
操作:
- 开启同步:
C-b :然后输入setw -g synchronize-panes on - 关闭同步:
C-b :然后输入setw -g synchronize-panes off
你应该看到:
- 输入的命令在多个窗格同时出现
失败怎么办:
- 没反应:确认当前窗口有多个窗格。
11. 配置文件:让 tmux 更顺手
目的: 固化你的常用习惯。
操作: 新建 ~/.tmux.conf,写入下面内容:
# 允许鼠标
set -g mouse on
# 更大的历史滚动
set -g history-limit 100000
# 把前缀从 C-b 改成 C-a(可选)
set -g prefix C-a
unbind C-b
bind C-a send-prefix
# 复制模式用 vi 键位(可选)
setw -g mode-keys vi
# 快速重载配置
bind r source-file ~/.tmux.conf \; display-message "tmux reloaded"重载配置:
tmux source-file ~/.tmux.conf你应该看到:
- 状态栏弹出 “tmux reloaded”
失败怎么办:
- 没提示:手动执行
tmux show -g history-limit看配置是否生效。
12. 进阶:多端同时连接同一会话
目的: 让两台设备同时看同一 session(适合远程协作或手机备份)。
操作: 在另一台机器上执行:
tmux attach -t work你应该看到:
- 两个终端同步显示
- 在一个端输入,另一个端实时更新
失败怎么办:
- 连接后把别人踢下线:用
tmux attach -d -t work,确保你是主动接管。
13. 进阶:会话恢复(重启机器也能回来)
目的: 机器重启后恢复之前的 tmux 布局。
操作: 使用 TPM + tmux-resurrect/continuum。
- 安装 TPM:
git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm- 在
~/.tmux.conf加:
set -g @plugin 'tmux-plugins/tpm'
set -g @plugin 'tmux-plugins/tmux-resurrect'
set -g @plugin 'tmux-plugins/tmux-continuum'
set -g @continuum-restore 'on'- 在 tmux 内按
C-b I安装插件。
你应该看到:
- 底部出现安装提示
- 重启后会话可恢复(需手动或自动)
失败怎么办:
- 插件没装上:确认
~/.tmux/plugins/tpm目录存在。
14. 常用快捷键速查(够你一周内上手)
| 场景 | 快捷键 |
|---|---|
| 新建会话 | tmux new -s name |
| 退出但不中断 | C-b d |
| 新建窗口 | C-b c |
| 切换窗口 | C-b n / C-b p |
| 分屏(垂直/水平) | C-b % / C-b " |
| 切换窗格 | C-b o 或方向键 |
| 复制模式 | C-b [ |
| 粘贴 | C-b ] |
| 查看快捷键 | C-b ? |
15. 排错清单(最常见的 6 个坑)
- 快捷键没反应:确认先按
C-b,再按目标键。 - 复制模式不好用:检查是否启用了
mode-keys vi。 - 鼠标滚轮无效:确认
set -g mouse on并重载。 - 分屏太小:用
resize-pane调整,或把窗口拆成不同 window。 - 会话消失:确认是否误用了
kill-session或kill-server。 - WSL 无法滚动:更新 Windows Terminal/WSL,或开启 mouse。
如果你只记住一句话:tmux 是“会话常驻器”。会话一旦建立,你的工作就不再依赖窗口是否开着。把它变成你的默认终端习惯,你就会自然进入长期高产的状态。
作者
分类
更多文章
需要定制方案?
遇到问题或想让我帮你完成繁重的工作?给我发条消息,我会在24小时内回复——简单咨询永远免费。
邮件列表
加入我们的社区
订阅邮件列表,及时获取最新消息和更新
