什么是 tmux
tmux 是一个
终端复用器
(terminal multiplexer)。它让我们可以使用单一环境就可以登录多个终端或窗口,每个终端或窗口都运行着独立的进程或程序。还可以将窗口划分为水平或垂直面板,也就是说在同一个屏幕上显示或运行多个程序。这些操作都不需要鼠标。
模块
- Server 服务器: 启用 tmux 时默认
- Session 会话: 一个服务器包含多个会话
- Window 窗口: 一个会话包含多个窗口
- Pane 面板: 一个窗口包含多个面板
命令
创建命令
命令模式
Tmux 快捷键
系统操作
快捷键 | 说明 |
---|---|
? | 列出所有快捷键 |
d | 脱离会话,返回到 Shell 界面 |
D | 选择要脱离的会话 |
r | 强制重绘未脱离的会话 |
s | 选择并切换会话 |
: | 进入命令行模式 |
[ | 进入复制模式 |
~ | 列出提示信息缓存 |
Ctrl+z | 挂起当前会话 |
窗口操作
快捷键 | 说明 |
---|---|
c | 创建新窗口 |
& | 关闭当前窗口 |
0-9 | 切换至指定窗口 |
n | 切换至下一窗口 |
p | 切换至上一窗口 |
l | 在两个窗口间切换 |
w | 显示窗口列表 |
, | 重命名当前窗口 |
. | 修改当前窗口编号 |
f | 查找窗口或文本 |
面板操作
快捷键 | 说明 |
---|---|
“ | 上下分割面板 |
% | 左右分割面板 |
Space | 循环切换布局 |
x | 关闭当前面板 |
! | 将当前面板置于新窗口 |
q | 显示面板编号 |
o | 在面板之间移动焦点 |
t | 显示时间 |
{ | 同前个面板交换位置 |
} | 同后个面板交换位置 |
Alt+o | 逆时针旋转当前窗口的面板 |
Ctrl+o | 顺时针旋转当前窗口的面板 |
方向键 | 移动光标以选择面板 |
Ctrl+方向键 | 调整当前面板大小 1 |
Alt+方向键 | 调整当前面板大小 5 |
默认面板布局
- even-horizontal: 从左到右水平排列面板
- even-vertical: 从上到下垂直排序面板
- main-horizontal: 顶部大面板,其余水平放在底部
- main-vertical: 左侧大面板,其余垂直放在右侧
- tiled: 平均显示所有面板
配置文件位置
- 系统配置文件: /etc/tmux.conf
- 用户配置文件: ~/.tmux.conf # 高优先级