tmux 是一款终端复用工具,支持多窗口、多会话管理,以下是按使用场景分类的常用命令,涵盖日常操作核心场景:
一、会话管理(最核心,tmux 所有操作基于会话)
1. 创建会话
# 创建默认名称的会话(会话名自动为 0、1、2...)
tmux
# 创建指定名称的会话(推荐,便于管理)
tmux new -s <会话名> # 例:tmux new -s dev2. 列出所有会话
tmux ls # 或 tmux list-sessions
# 输出示例:dev: 1 windows (created Mon Dec 8 10:00:00 2025) [80x24]3. 分离/退出会话(不关闭会话,仅断开连接)
# 在 tmux 会话内执行:快捷键 Ctrl + b + d(推荐)
# 或命令行执行(会话内/外均可)
tmux detach -t <会话名> # 例:tmux detach -t dev4. 接入/恢复会话
# 接入指定名称的会话
tmux attach -t <会话名> # 例:tmux attach -t dev
# 若只有一个会话,可简化
tmux a5. 重命名会话
# 会话内执行
tmux rename-session -t <旧名> <新名> # 例:tmux rename-session -t dev prod
# 快捷键:Ctrl + b + $(会话内直接重命名)6. 关闭/杀死会话
# 杀死指定会话
tmux kill-session -t <会话名> # 例:tmux kill-session -t dev
# 杀死所有会话
tmux kill-server
# 会话内直接退出(关闭当前会话):exit 或 Ctrl + d7. 切换会话
# 在不同会话间切换
tmux switch -t <会话名> # 例:tmux switch -t test
# 快捷键:Ctrl + b + s(会话列表交互式切换)二、窗口管理(一个会话可包含多个窗口)
1. 创建新窗口
# 会话内执行命令
tmux new-window -n <窗口名> # 例:tmux new-window -n log
# 快捷键(推荐):Ctrl + b + c(创建默认名称窗口)2. 列出当前会话的窗口
tmux list-windows # 或 tmux lsw3. 切换窗口
# 按窗口编号切换(编号从 0 开始)
tmux select-window -t <窗口编号> # 例:tmux select-window -t 1
# 快捷键:
# Ctrl + b + <编号>(直接切换到对应编号窗口,如 Ctrl+b+1)
# Ctrl + b + n(切换到下一个窗口)
# Ctrl + b + p(切换到上一个窗口)
# Ctrl + b + w(窗口列表交互式切换)4. 重命名窗口
tmux rename-window -t <窗口编号> <新名> # 例:tmux rename-window -t 0 mysql
# 快捷键:Ctrl + b + ,(会话内直接重命名当前窗口)5. 关闭窗口
tmux kill-window -t <窗口编号> # 例:tmux kill-window -t 1
# 快捷键:Ctrl + b + &(会话内关闭当前窗口,需确认)
# 窗口内执行 exit 也可关闭当前窗口三、窗格管理(一个窗口可拆分多个窗格,核心高效操作)
1. 拆分窗格
# 水平拆分(上下)
tmux split-window # 或 tmux splitw
# 垂直拆分(左右)
tmux split-window -h
# 快捷键:
# Ctrl + b + "(水平拆分)
# Ctrl + b + %(垂直拆分)2. 切换窗格
tmux select-pane -t <窗格编号> # 例:tmux select-pane -t 1
# 快捷键:
# Ctrl + b + 方向键(上下左右切换)
# Ctrl + b + o(按顺序切换下一个窗格)3. 调整窗格大小
# 调整当前窗格高度(上下),数字为行数
tmux resize-pane -U <数字> # 向上,例:tmux resize-pane -U 5
tmux resize-pane -D <数字> # 向下
# 调整当前窗格宽度(左右),数字为列数
tmux resize-pane -L <数字> # 向左
tmux resize-pane -R <数字> # 向右
# 快捷键:Ctrl + b + 按住 Ctrl + 方向键(微调窗格大小)4. 关闭窗格
tmux kill-pane -t <窗格编号> # 例:tmux kill-pane -t 1
# 快捷键:Ctrl + b + x(关闭当前窗格,需确认)
# 窗格内执行 exit 也可关闭当前窗格5. 窗格全屏/还原
# 快捷键:Ctrl + b + z(当前窗格全屏,再按一次还原)四、其他常用操作
1. 查看 tmux 快捷键帮助
# 快捷键:Ctrl + b + ?(弹出帮助列表,按 q 退出)2. 复制粘贴(tmux 复制模式)
# 1. 进入复制模式:Ctrl + b + [
# 2. 移动光标到复制起始位置,按 Space 开始选择
# 3. 移动光标到复制结束位置,按 Enter 复制
# 4. 粘贴:Ctrl + b + ]3. 调整 tmux 终端大小(适配窗口)
# 快捷键:Ctrl + b + Ctrl + r(刷新终端大小)五、实用组合示例
快速创建开发会话:
tmux new -s dev -n editor # 创建名为 dev 的会话,默认窗口名 editor会话内快速拆分窗格并操作:
Ctrl + b + % # 垂直拆分窗格 Ctrl + b + 右方向键 # 切换到右侧窗格 vim . # 右侧编辑代码 Ctrl + b + 左方向键 # 切回左侧窗格 npm run dev # 左侧启动服务远程服务器保持会话:
ssh user@server # 登录远程服务器 tmux new -s server-dev # 创建会话 # 执行耗时任务(如部署、日志监控) Ctrl + b + d # 分离会话,断开 ssh 连接 # 重新登录后恢复 ssh user@server tmux a -t server-dev
核心快捷键速查表(高频)
| 快捷键 | 功能 |
|---|---|
| Ctrl + b + d | 分离会话 |
| Ctrl + b + s | 切换会话 |
| Ctrl + b + c | 创建新窗口 |
| Ctrl + b + n/p | 切换下/上一个窗口 |
| Ctrl + b + % | 垂直拆分窗格 |
| Ctrl + b + " | 水平拆分窗格 |
| Ctrl + b + 方向键 | 切换窗格 |
| Ctrl + b + z | 窗格全屏/还原 |
| Ctrl + b + ? | 查看快捷键帮助 |
| Ctrl + b + [/]] | 进入复制模式/粘贴 |
记住 Ctrl + b 是 tmux 的前缀键,所有快捷键都需要先按前缀键,再按后续键。熟练掌握会话、窗口、窗格的核心操作,就能高效使用 tmux 提升终端效率。