tmux 常用命令总结:从入门到稳定使用的一篇实战博客

tmux 常用命令总结:从入门到稳定使用的一篇实战博客

这篇文章不是"命令大全",而是基于真实使用场景,总结 tmux 在日常开发中的高频用法与坑位。适合刚开始用 tmux、以及"会用但不顺"的阶段。


一、为什么你应该用 tmux

如果你有以下任何一种情况,tmux 都非常值得:

  • 经常 SSH 到服务器
  • 需要同时跑服务、看日志、敲命令
  • 网络不稳定,但任务不能中断
  • 不想开一堆终端窗口

一句话概括 tmux:

tmux 是一个可以"保存现场"的终端管理器


二、tmux 的三个核心概念(必须搞清)

复制代码
session  → 项目 / 工作区
window   → 功能区(类似 Tab)
pane     → 分屏
  • session :一个项目,比如 dev
  • window:不同工作内容,如 claude / server / logs
  • pane:同一窗口内的并行视图

新手常见错误:

  • 一个 session 里堆一堆 pane
  • Claude / 服务 / 日志 全混在一起

三、最基础的 session 命令

bash 复制代码
tmux                  # 新建并进入一个 session
tmux new -s jw-dev     # 创建并命名 session
tmux ls               # 查看所有 session
tmux attach -t jw-dev # 进入指定 session
tmux detach           # 脱离 session(不中断程序)
tmux kill-session -t jw-dev

快捷键(在 tmux 内):

text 复制代码
Ctrl + b d    # detach

四、window:真正的工作分区

常用快捷键

text 复制代码
Ctrl+b c    新建 window
Ctrl+b n    下一个 window
Ctrl+b p    上一个 window
Ctrl+b w    window 列表(最常用)
Ctrl+b ,    重命名 window
Ctrl+b &    关闭 window

经验建议:

  • 一个 window 只做一类事情
  • Claude / Server / Logs 强烈建议分 window

五、pane:效率来源

创建 pane

text 复制代码
Ctrl+b %    左右分屏
Ctrl+b "    上下分屏

pane 操作

text 复制代码
Ctrl+b o        切换 pane
Ctrl+b ↑↓←→     按方向切换
Ctrl+b x        关闭 pane
Ctrl+b z        放大 / 还原 pane(非常好用)
Ctrl+b Space    切换布局

六、滚动与复制:tmux 的高频痛点

进入滚动模式(非全屏程序)

text 复制代码
Ctrl+b [

在 copy-mode(vi 模式)中:

  • j / k:上下滚动
  • /:搜索
  • Space:开始选择
  • Enter:复制
  • Ctrl+b ]:粘贴

七、mouse on 后的真实行为(很多人踩坑)

推荐配置

conf 复制代码
set -g mouse on
set -g history-limit 50000
setw -g mode-keys vi
set -s escape-time 10

常见疑问:

鼠标能滚了,但拖选文字一松手就没了?

这是 tmux 的正常行为

  • 鼠标事件已被 tmux 接管
  • 高亮只是"选择过程",不是系统选中

正确的复制方式

  • 系统复制(最推荐)

    text 复制代码
    Shift + 鼠标拖动

    然后使用 Cmd+C / Ctrl+C

  • tmux 内部复制

    • 鼠标拖选 → 松手
    • Ctrl+b ] 粘贴

记住一句话: 要系统复制,就按 Shift


八、Claude Code / Vim / htop 滚不动?不是你的问题

关键结论

tmux 无法滚动 全屏 TUI 程序的历史输出

原因:

  • TUI 使用 alternate screen
  • 输出不会进入 tmux scrollback

正确使用方式

  • Claude Code 单独一个 window

  • 日志输出:

    • 单独 pane
    • 或 redirect 到文件,用 less / tail -f

不要强行"让 tmux 滚 TUI"


九、一个稳定可用的 tmux 布局示例

复制代码
session: jw-dev

window 0: claude
  └─ Claude Code

window 1: server
  ├─ 启动服务
  └─ tail -f 日志

window 2: shell
  └─ git / 临时命令

这个结构的好处是:

  • 不互相干扰
  • tmux 的滚动能力用在该用的地方

十、最小 tmux.conf(新手友好)

conf 复制代码
set -g mouse on
set -g history-limit 50000
setw -g mode-keys vi
set -s escape-time 10

加载配置:

bash 复制代码
tmux source ~/.tmux.conf

结语

tmux 并不难,难的是:

  • 一开始没人告诉你 该怎么分 window / pane
  • TUI + mouse 的行为很反直觉

一旦理解这些原则:

tmux 负责会话和日志,TUI 负责交互,复制用 Shift

你会发现 tmux 会变成一个非常稳定、值得长期投入肌肉记忆的工具。


如果你已经看到这里,说明你已经超过 80% 的 tmux 用户了 🙂

相关推荐
牢姐与蒯5 分钟前
Linux进程间通信(一).进程间通信概念&&环境切换(着重强调vscode)
linux·运维·服务器·ubuntu
Web4Browser12 分钟前
浏览器指纹逆向到底在分析什么:从 JavaScript 采集、Canvas 与 WebGL 到环境一致性校验
java·服务器·前端
M78佐菲14 分钟前
ARM学习笔记(四)
linux·arm开发·笔记·嵌入式硬件·学习
东鹏特饮15 分钟前
redhat9 配置yum 阿里云
linux·运维·redhat·yum
昌原的儿子LEO17 分钟前
i.MX6ULL 裸机开发 C 语言驱动与 BSP 工程管理学习总结
linux·arm开发·学习
lqg_zone20 分钟前
CentOS 7 虚拟机磁盘 I/O 卡顿排查实录:从 iostat 异常到虚拟盘后端故障的完整定位
linux·服务器·mysql·centos
tedcloud12330 分钟前
emilkowalski/skills:让 AI 写出来的网页更有“设计感”
服务器·人工智能·开源·音视频·ai编程
kkkkkkkkkk_Z31 分钟前
单片机|学习日记:单片机底层架构与寄存器操作全解析
linux·笔记·单片机·学习·51单片机
Shadow(⊙o⊙)35 分钟前
OTOL设计模式 One Thread One Loop
服务器·网络·设计模式
xiaoye-duck36 分钟前
《Linux 网络编程》深入理解 IP 协议(一):网络层基础与 IP 协议头详解
linux·网络·ip