tmux 是一款优秀的终端复用软件,它通过前缀键+操作键进行使用。
tmux前缀键默认为Ctrl+b,可通过配置文件进行更改,后面会写到。
tmux 分为会话(Session)、窗口(Window)和窗格(pane)。
快捷键
会话(Session)
- 创建一个新的Session
$ tmux new -s "名称"
- 在tmux中再创建一个Session
Ctrl+b :new -s "名称"
- 切换不同的Session
Ctrl+b s up(down)方向键
- 重命名当前Session
Ctrl+b $
- 退出当前Session
$ exit
- 恢复最上面的一个Session
$ tmux a
- 恢复指定Session
$ tmux attach-session -t <session-name>
窗口(Window)
- 创建一个新的Window
Ctrl+b c
- 重命名当前Window
Ctrl+b ,
- 创建一个指定名字的Window
Ctrl+b :new-window -n <window-name>
- 切换不同的Window
Ctrl+b number(位于window名字:前面的数字编号)
- 删除当前的Window
Ctrl+b &
窗格(Pane)
- 垂直分割窗口(一左一右2个窗格)
Ctrl+b %
- 水平分割窗口(一上一下2个窗格)
Ctrl+b "
- 切换不同的窗格(Pane)
Ctrl+b up(down、left、right上下左右方向键)
- 删除当前的窗格(Pane)
Ctrl+b x
复制、粘贴文本
Ctrl+b [
进入复制模式Space
空格键开始复制指定的文本(类似vi的可视模式)Enter
回车,复制完成Ctrl+b ]
粘贴文本
配置
编辑~/.tmux.conf文件
- 修改前缀键为Ctrl+a(C-a)
set -g prefix C-a
- 解除原来的Ctrl+b
unbind C-b
其他的配置和快捷键可通过$ man tmux
查看tmux的手册
总结一下
我使用tmux最主要的还是看中它的现场恢复了。
比如说:今天在服务器上进行编码修改,快到下班时间,不想等着加班搞完了再回去,可以直接关掉电脑走人,第二天来登陆服务器,直接$ tmux a
即可完美回到前一天正在修改的地方,继续接着改就可以了。不然每次下班第二天来又要找半天前一天要改的地方了。。
还有一个好处是tmux只通过一个ssh连接就可以实现多个终端操作了,大家都知道在工作中,一个终端的使用是远远不够的,如果不用类似tmux这样的软件,就必须要进行多次ssh连接了。
最后需要注意一下的是: 使用tmux恢复时,必须要保证在上一次断开连接到这次恢复之间,服务器(主机)不能重启,一旦重启了就什么都没了。。