tmux命令总结

Tmux 终端复用工具操作指南

💡 前置说明

  • Tmux 默认前缀为 Ctrl+b
  • Tmux 层级结构:Session(会话) → Window(窗口) → Pane(窗格)

📦 一、会话管理(Session)

常用命令(在外部 Shell 执行)

操作 命令 说明
启动 tmux tmux 创建并进入默认会话(编号 0)
新建命名会话 tmux new -s <session-name> 推荐:用名称代替编号管理
查看会话列表 tmux lstmux list-sessions 显示所有后台会话
接入指定会话 tmux attach -t <name/编号> 重新连接已存在的会话
杀死指定会话 tmux kill-session -t <name/编号> 终止会话及其中所有进程
切换会话 tmux switch -t <name/编号> 在当前终端切换目标会话
重命名会话 tmux rename-session -t <old> <new> 修改会话名称

会话快捷键(在 tmux 内执行)

快捷键 功能
Ctrl+b d 分离当前会话(退回外部 Shell,会话后台运行)
Ctrl+b s 列出所有会话,支持方向键选择切换
Ctrl+b $ 重命名当前会话

🔁 最简工作流

  1. tmux new -s my_work → 2. 执行任务 → 3. Ctrl+b d 分离 → 4. 下次 tmux attach -t my_work 恢复

🪟 二、窗口管理(Window)

常用命令

# 新建窗口
tmux new-window
tmux new-window -n <window-name>  # 指定名称

# 切换窗口
tmux select-window -t <编号/名称>

# 重命名当前窗口
tmux rename-window <new-name>

窗口快捷键(前缀 Ctrl+b

快捷键 功能
c 新建窗口(自动递增编号)
p / n 切换上一个 / 下一个窗口
<0-9> 直接跳转对应编号窗口
w 弹出窗口列表,支持方向键+Enter 选择
, 重命名当前窗口(输入后 Enter 确认)
& 关闭当前窗口(需确认)

🧩 三、窗格管理(Pane)

划分窗格

方式 命令(tmux 内) 快捷键
上下分割 tmux split-window Ctrl+b "
左右分割 tmux split-window -h Ctrl+b %

切换与调整

操作 命令 快捷键
切换到上/下/左/右窗格 tmux select-pane -U/D/L/R Ctrl+b ↑/↓/←/→
切换到上一个活跃窗格 tmux select-pane -l Ctrl+b ;
切换到下一个窗格 Ctrl+b o
当前窗格与上一个交换位置 tmux swap-pane -U Ctrl+b {
当前窗格与下一个交换位置 tmux swap-pane -D Ctrl+b }
关闭当前窗格 exitCtrl+d Ctrl+b x
当前窗格全屏/还原 Ctrl+b z
按方向调整窗格大小 Ctrl+b Ctrl+↑/↓/←/→Alt+↑/↓/←/→
显示窗格编号(快速定位) Ctrl+b q
当前窗格拆分为独立窗口 Ctrl+b !

📜 四、视图与辅助操作

功能 操作方式
进入滚动模式(查看历史输出) Ctrl+b [ → 用 ↑/↓PageUp/PageDown 翻页 → 按 qEsc 退出
复制模式 Ctrl+b [ 进入后,按 Space 开始选区,Enter 复制,Ctrl+b ] 粘贴
显示所有快捷键 Ctrl+b ? → 按 q 退出帮助
启用鼠标支持(临时) Ctrl+b : 进入命令行,输入 set -g mouse on
重新加载配置 tmux source-file ~/.tmux.conf

⚠️ 五、关键注意事项

  1. 前缀键操作逻辑
    Ctrl+b组合前缀,需先按下并松开,再按功能键(如 dc),不是同时按住

  2. 命令执行环境

    • tmux new / attach / kill-session 等命令仅在外部 Shell 有效
    • tmux 内部操作应优先使用 Ctrl+b 快捷键,而非重复调用 tmux 命令
  3. 退出逻辑

    • Ctrl+dexit:关闭当前窗格;若为会话最后一个窗格,则终止整个会话
    • Ctrl+b d仅分离会话,进程继续后台运行,可随时 attach 恢复
  4. 会话持久化优势
    Tmux 核心价值:会话与终端解耦。即使 SSH 断连、本地关机,远程任务仍持续运行,重新连接后可完整恢复工作环境。


🔧 附:自定义配置建议(~/.tmux.conf)

# 修改前缀键为 Ctrl+a(可选,更符合 Screen 习惯)
unbind C-b
set-option -g prefix C-a
bind-key C-a send-prefix

# 启用鼠标支持(推荐)
set -g mouse on

# 状态栏显示在顶部
set -g status-position top

# 窗口编号从 1 开始(更符合直觉)
set -g base-index 1
setw -g pane-base-index 1

# 按 Alt+方向键调整窗格大小(部分终端需配置)
bind-key -n M-Left resize-pane -L 5
bind-key -n M-Right resize-pane -R 5
bind-key -n M-Up resize-pane -U 5
bind-key -n M-Down resize-pane -D 5

修改配置后执行:tmux source-file ~/.tmux.conf 生效

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容