tmux简介
tmux是一个优秀的终端复用软件,类似GNU screen,但来源于OpenBSD,采用BSD授权。使用它最直观的好处就是通过一个终端登录远程主机并运行tmux后,在其中可以开启多个控制台而无需再“浪费”多余的终端来连接这台远程主机;当然其功能远不止于此。
tmux使用C/S模型构建,主要包括以下单元模块:
- | 说明 |
---|---|
server | 服务器,输入tmux命令时就开启一个服务器 |
session | 会话,一个会话可以包含多个窗口 |
window | 窗口,一个会话可以包含多个窗口 |
pane | 面板,一个窗口可以包含多个面板 |
常用命令
tmux new-session -s session #创建某个会话
tmux ls #列出会话
tmux attach-session -t session #进入某个会话
tmux kill-session -t "session" //删除指定会话
Ctrl+b 激活控制台;此时以下按键生效
session常用命令
快捷键 | 说明 |
---|---|
$ | 重命名当前session |
? | 列出所有快捷键;按q返回 |
d | 脱离当前会话;这样可以暂时返回Shell界面,输入tmux attach能够重新进入之前的会话 |
D | 选择要脱离的会话;在同时开启了多个会话时使用 |
Ctrl+z | 挂起当前会话 |
r | 强制重绘未脱离的会话 |
s | 选择并切换会话;在同时开启了多个会话时使用 |
: | 进入命令行模式;此时可以输入支持的命令,例如kill-server可以关闭服务器 |
[ | 进入复制模式;此时的操作与vi/emacs相同,按q/Esc退出 |
~ | 列出提示信息缓存;其中包含了之前tmux返回的各种提示信息 |
t | 显示时间 |
( | 切换session 切换到上一个session |
) | 切换session 切换到下一个session |
L | 切换session 到前一个活跃的session |
window常用命令
快捷键 | 说明 |
---|---|
c | 创建新窗口 |
& | 关闭当前窗口 |
数字键 | 切换至指定窗口 |
p | 切换至上一窗口 |
n | 切换至下一窗口 |
l | 在前后两个窗口间互相切换 |
w | 通过窗口列表切换窗口 |
, | 重命名当前窗口;这样便于识别 |
. | 修改当前窗口编号;相当于窗口重新排序 |
f | 在所有窗口中查找指定文本 |
pane常用命令
快捷键 | 说明 |
---|---|
” | 将当前面板平分为上下两块 |
% | 将当前面板平分为左右两块 |
x | 关闭当前面板 |
! | 将当前面板置于新窗口;即新建一个窗口,其中仅包含当前面板 |
Ctrl+方向键 | 以1个单元格为单位移动边缘以调整当前面板大小 |
Alt+方向键 | 以5个单元格为单位移动边缘以调整当前面板大小 |
Space | 在预置的面板布局中循环切换;依次包括even-horizontal、even-vertical、main-horizontal、main-vertical、tiled |
q | 显示面板编号 |
o | 在当前窗口中选择下一面板 |
方向键 | 移动光标以选择面板 |
{ | 向前置换当前面板 |
} | 向后置换当前面板 |
Alt+o | 逆时针旋转当前窗口的面板 |
Ctrl+o | 顺时针旋转当前窗口的面板 |
tmux配置文件 ~/.tmux.conf
1 | setw -g mode-mouse on |