tmux 是一款终端复用命令行工具,一般用于 Terminal 的窗口管理,可以替代 Vim 的多文件多窗口模式进行更加人性化和高效率的终端操作和管理。它提供以下三种操作模式:
会话模式
如果运行了多次 tmux 命令则会开启多个 tmux 会话(session)。在 tmux 会话中,使用前缀快捷键 (Linux 和 Mac 下 为ctrl b
,以下提到的tmux的所有操作都需要此前缀快捷键配合) 配合以下快捷键可操作会话:
快捷键 | 功能 |
---|---|
$ | 重命名当前会话 |
s | 显示选择会话列表 |
d | detach 当前会话,运行后将会退出 tmux 进程,返回至 shell 主进程 |
在 shell 主进程下运行以下命令可以操作 tmux 会话:
命令 | 功能 |
---|---|
tmux | 默认开启名称为 0 的会话,若 0 已存在,则递增 |
tmux new -s NAME | 新建指定名称的会话 |
tmux ls | 列出当前所有会话 |
tmux a | 重新恢复上一次的会话 |
tmux a -t NAME | 恢复指定会话 |
窗口模式
每个会话可以包含多个窗口,窗口相关的快捷键操作如下:
快捷键 | 功能 |
---|---|
w | 显示列出当前会话所有窗口 |
c | 创建新窗口 |
, | 重命名当前窗口 |
p | 切换至上一个窗口 |
n | 切换至下一个窗口 |
& | 关闭退出当前窗口 |
窗格模式
每个窗口可以包含多个窗格,窗格相关的快捷键操作如下:
快捷键 | 功能 |
---|---|
% | 垂直平分窗口 |
“ | 水平平分窗口 |
x | 关闭当前窗格 |
! | 关闭当前窗口中的所有窗格 |
z | 最大化当前窗格,再次按键恢复,用于复制粘贴等操作 |
以上是 tmux 的三种工作模式,同时,你也可以通过它的配置文件 (~/.tmux.connf
) 依据官方文档进行鼠标滚屏,窗格布局等特性的配置。