tmux 实战指南:安装、优化、美化与开发场景快捷键
tmux 实战指南:安装、优化、美化与开发场景快捷键
如果你平时开终端已经开习惯了,但还没有系统用过 tmux,这篇文章可以带你把安装、常用操作、基础配置和开发里的实际用法走一遍。
我第一次认真开始用 tmux,其实也不是为了什么“效率工具体系”,就是因为几个很实际的问题:SSH 断了进程不能丢,服务挂在前台终端不能关,一个项目里同时看日志、跑测试、改代码,来回切窗口也确实烦。
tmux 本质上就是把这些问题一起解决掉。它没什么花里胡哨的东西,但只要你开始习惯一个项目固定一个 session,后面基本就回不去了。
1. tmux 到底适合什么场景
我自己觉得 tmux 最适合下面这几类场景:
- 长时间运行任务,比如开发服务器、测试、部署脚本
- 远程开发,比如 SSH 到云服务器、NAS、家里的主机
- 一个项目里需要同时盯多个终端内容,比如日志、构建、Git、数据库
- 想把终端工作流固定下来,下次一进来就接着干
如果你平时只有偶尔开一个终端跑命令,那 tmux 不一定是刚需;但如果你经常同时开三四个终端窗口,tmux 基本值得花半小时认真配置一下。
2. 安装 tmux
先装,再确认版本。
1 | |
安装完成后,先看版本:
1 | |
如果输出类似下面这样,就说明已经装好了:
1 | |
我这里顺手提一句:截至 2026-04-07,tmux 官方 Wiki 和 GitHub Releases 看到的稳定版是 3.6a。不过实际使用时最重要的不是追新,而是别太老。后面如果你要用 popup、主题插件或者更顺手的复制体验,再决定要不要升级也不迟。
3. 先搞懂 3 个核心概念
tmux 一开始最容易把人绕晕的,就是下面这 3 个词:
session:一个会话,你可以理解为一个项目的一整套工作区window:会话里的窗口,差不多可以理解成标签页pane:窗口里的分屏
你可以把它想成这样:
1 | |
你先不用死记定义,知道它们大概分别对应“项目”“标签页”“分屏”就够用了,后面边用边熟。
4. 最小可用命令集
先别急着配主题,先把最基本的工作流跑通。
4.1 创建和进入会话
1 | |
如果你已经在 tmux 里,还可以直接新建后台会话:
1 | |
4.2 查看已有会话
1 | |
4.3 重新连接会话
1 | |
4.4 离开但不关闭
在 tmux 里按:
1 | |
这一步非常关键。很多人第一次用 tmux,最爽的地方就是这里。你离开了,但里面跑着的服务、日志、命令都还在。
4.5 关闭会话
1 | |
5. 我平时最常用的一组快捷键
tmux 默认前缀键是 Ctrl+B。也就是说,很多操作都是先按一次 Ctrl+B,再按后面的键。
下面这张表,基本就是我自己平时最常按的一批:
| 操作 | 快捷键 |
|---|---|
| 新建窗口 | Ctrl+B, c |
| 下一个窗口 | Ctrl+B, n |
| 上一个窗口 | Ctrl+B, p |
| 水平分屏 | Ctrl+B, " |
| 垂直分屏 | Ctrl+B, % |
| 在分屏之间切换 | Ctrl+B, 方向键 |
| 关闭当前 pane | Ctrl+B, x |
| 临时离开会话 | Ctrl+B, d |
| 进入复制/滚动模式 | Ctrl+B, [ |
| 重命名窗口 | Ctrl+B, , |
| 显示 pane 编号 | Ctrl+B, q |
如果你只打算先记一组快捷键,就先记这张表。
6. 我自己的基础配置
等你把基础命令用过两天,就会开始嫌默认配置不够顺手。这时候可以上自己的 ~/.tmux.conf。
下面这份配置可以直接当起点,不复杂,但已经足够顺手:
1 | |
改完后执行:
1 | |
或者在 tmux 里按你刚绑定的:
1 | |
这份配置主要就是解决下面几个问题:
- 分屏后保留当前目录,不用每次重新
cd - 用
hjkl切 pane,比默认键位更顺手 - 鼠标、滚动历史、窗口编号这些默认体验更合理
- 前缀改成
Ctrl+A,很多人会比Ctrl+B更顺
7. 美化:先装 TPM,再上主题
tmux 美化最省心的方式,通常是配合 TPM 使用。
7.1 安装 TPM
1 | |
然后把 TPM 放到 ~/.tmux.conf 最后:
1 | |
进入 tmux 之后,按下面这个快捷键安装插件:
1 | |
如果你的前缀键已经改成了 Ctrl+A,那这里就是 Ctrl+A, I。
7.2 用 Catppuccin 做主题
这套主题现在挺常见的,也比较稳。官方 README 目前更推荐手动安装,因为 TPM 方案可能会遇到插件命名冲突;不过如果你本身就是用 TPM 统一管插件,那直接走 TPM 也完全够用了。
在插件列表里加上:
1 | |
如果你想顺手把状态栏也做得更完整一点,可以再加:
1 | |
再执行一次:
1 | |
7.3 Nerd Font 记得装
如果状态栏图标显示成方块,问题一般不在 tmux,而在终端字体。最省事的做法是安装一个 Nerd Font,比如:
- JetBrainsMono Nerd Font
- FiraCode Nerd Font
然后在你的终端工具里把字体切过去。
8. 我平时是怎么用 tmux 的
我自己现在最看重的,其实不是 tmux 能分屏,而是它能把一个项目的终端工作流固定下来。
8.1 一个我自己常用的布局
1 | |
这个布局搭起来很快:
1 | |
然后每个 pane 里我一般这么放:
1 | |
8.2 SSH 断开也不怕
这个场景我觉得是 tmux 最值钱的地方之一。
比如你在远程机器上跑服务:
1 | |
这时网络断了也没关系,重新连上去之后:
1 | |
你会回到刚才那个现场。
8.3 用 copy mode 看长日志
终端输出很多的时候,tmux 的复制模式很好用:
1 | |
进入之后,如果你启用了 mode-keys vi,就可以直接用这些键:
j/k:逐行移动Ctrl+u/Ctrl+d:半页滚动/:向前搜索n/N:下一个/上一个匹配q:退出复制模式
看测试输出、构建日志、部署日志的时候,这个真的很好用。
8.4 popup 很适合放临时任务
如果你的 tmux 版本比较新,可以试试 display-popup。这个功能很适合临时开一个命令,不打断当前布局。
比如:
1 | |
或者:
1 | |
这类能力在老版本 tmux 上可能不可用,所以如果你执行报错,先看下 tmux -V。
9. 几个最容易踩的坑
9.1 复制了,但系统剪贴板里没有
这个问题我觉得很多人第一次都会遇到。通常不是 tmux “坏了”,而是终端、剪贴板工具、OSC 52 这条链路没打通。
可以优先按这个思路排查:
- 先确认你用的终端是否支持 OSC 52
- 已经开启
set -g set-clipboard on - macOS 可以考虑配合
pbcopy - Linux 常见是
xclip或xsel
如果你经常在远程机器上用 tmux,这一块尤其容易踩坑。
9.2 颜色不对,主题发灰
这个时候我建议你先看下面这两项:
1 | |
如果终端本身没有开启真彩色支持,主题效果也会打折。
9.3 分屏后总是回到 home 目录
这个也很常见。原因就是你新建 pane 或 window 的时候,没有显式继承当前路径。前面配置里的:
1 | |
就是专门解决这个问题的。
9.4 系统源里的 tmux 太老
很多 Linux 发行版默认仓库里的 tmux 版本都不算新。如果你发现主题装不上、popup 不支持、某些参数报错,第一反应先别怀疑配置,先看版本。
10. 一个适合日常开发的工作流
如果你刚开始用 tmux,我建议就按下面这个节奏来:
1 | |
配合命令大概就是这样:
1 | |
等你习惯之后,再慢慢加插件、主题、popup、会话恢复这些能力。tmux 最怕的不是配置少,而是一上来抄一大坨配置,结果每一行都不知道自己在改什么。
我自己的感觉是,tmux 真正值钱的地方不是分屏本身,而是你今天做到一半离开,明天回来还能从原来的地方继续干。
参考资料:
以上。完结撒花 🎉!