参考文章:Tmux使用手册以及A Quick and Easy Guide to tmux

基本概念

tmux 采用C/S模型构建,输入 tmux 命令就相当于开启了一个服务器,此时默认将新建一个会话,然后会话中默认新建一个窗口,窗口中默认新建一个面板。会话、窗口、面板之间的联系如下:

  • 一个 tmux session(会话)可以包含多个 window(窗口),窗口默认充满会话界面
  • 一个window又可以包含多个pane(面板),窗口下的面板,都处于同一界面下

基本操作

会话 (session)

新建会话

在终端输入

1
2
tmux # 新建一个无名称的会话
tmux new -s demo # 新建一个名称为demo的会话

断开当前会话

在会话中输入

1
tmux detach

或者使用快捷键:Ctrl+b + d

查看所有会话

1
2
tmux list-session # 查看所有会话
tmux ls # 查看所有会话,提倡使用简写形式

如果此时恰好在 tmux 会话中,还可以使用快捷键 Ctrl+b + s,此时 tmux 将打开一个会话列表,按上下键 (⬆︎⬇︎) 或者鼠标滚轮,可选中目标会话,按左右键 (⬅︎➜) 可收起或展开会话的窗口,选中目标会话或窗口后,按回车键即可完成切换。

进入之前的会话

断开会话后,想要接着上次留下的现场继续工作,可以使用tmux的attach命令

1
2
3
tmux attach-session -t demo # 完整写法,进入到名称为demo的会话
tmux a -t demo # 简写
tmux a # 默认进入第一个会话

会话重命名

1
tmux rename-session -t 0 database # 将原来名为 0 的 session 重命名为 database

关闭会话

可以使用tmux的kill命令,kill命令有 kill-pane、kill-server、kill-session 和 kill-window 共四种,这里使用 kill-session。如下:

1
2
tmux kill-session -t demo # 关闭demo会话
tmux kill-server # 关闭服务器,所有的会话都将关闭

窗口 (window)

前缀 指令 描述
Ctrl+b c 新建窗口
Ctrl + b & 关闭当前窗口(关闭前需输入yor n确认)
Ctrl + b 0 ~ 9 切换到指定窗口
Ctrl + b p 切换到上一窗口
Ctrl + b n 切换到下一窗口
Ctrl + b w 打开窗口列表,用于且切换窗口

面板 (pane)

前缀 指令 描述
Ctrl + b " 当前面板上下 下侧新建面板 分为
Ctrl + b % 当前面板左右 右侧新建面板
Ctrl + b x 关闭当前面板 (y or n确认),或者直接 Ctrl + d,或者输入 exit
Ctrl + b z 最大化当前面板,再重复一次按键后恢复原状(v1.8版本新增)
Ctrl + b q 显示面板编号,在编号消失前输入对应的数字可切换到相应的面板
Ctrl + b 方向键 移动光标切换面板
Ctrl + b o 选择下一面板
Ctrl + b 空格键 在自带的面板布局中循环切换