Skip to main content

Tmux

概念​

tmux 用 Session、Window 和 Pane 组织终端:一个 Session 可以包含多个 Window,每个 Window 又可以分成多个 Pane。

层级含义示例
Session(会话)一组持续运行的终端工作环境research
Window(窗口)Session 中的一个工作窗口train、code、log
Pane(面板)Window 中拆分出来的终端区域一个运行训练程序,另一个运行 nvidia-smi
Session(会话)
├── Window(窗口)
│ ├── Pane(面板)
│ └── Pane
└── Window

例如,research 会话可以这样安排:

research
├── window 0: train
│ ├── pane 1: python train.py
│ └── pane 2: nvidia-smi
├── window 1: code
└── window 2: log

常用命令​

命令作用示例
tmux new -s <名称>创建并进入一个新 Sessiontmux new -s experiment
tmux attach -t <目标>重新连接到已有 Sessiontmux attach -t experiment
tmux kill-session -t <目标>结束指定 Sessiontmux kill-session -t test
tmux ls列出当前所有 Sessiontmux ls

参数说明:

参数含义
-s指定新 Session 的名称
-t指定目标 Session 或其他 tmux 对象

常用快捷键​

以下快捷键都先按 tmux 前缀 Ctrl+b,再按后续按键。

操作按键
暂时离开 Session(后台继续运行)Ctrl+b,然后 d
新建 WindowCtrl+b,然后 c
切换到下一个 WindowCtrl+b,然后 n
切换到指定编号的 WindowCtrl+b,然后 0、1 或 2
左右分屏Ctrl+b,然后 %
上下分屏Ctrl+b,然后 "
在 Pane 之间切换Ctrl+b,然后方向键
调整 Pane 大小Ctrl+b,然后按住 Ctrl 并按方向键
查看快捷键帮助Ctrl+b,然后 ?