背景:
如果你还没有用过screen和tmux,那真是太揪心了。他们俩的相同之处就是都解决了一个问题,不管你用的是putty,还是xshell。只要关闭当前窗口或者因为网络问题,窗口断开或者超时,之前键入的命令正在服务器上执行的命令都会“前功尽弃”。如果用了他俩其中一个,哪怕你在服务器上回车完命令把窗口关闭,也没有问题,任务继续进行,直至完成。但今天我们要说的是tmux,它比screen更强大,强大在哪里呢?因为tmux可以直接划分会话框,简单说可以使用同一个putty或者xshell,可以划分出好几个窗口,只要你屏幕够大,机器跑的够快,可以轻松进行好多任务,再也不用同时开很多终端了。
安装
#yum install -y tmux
简单操作
1、创建tmux会话
#tmux new -s 会话名称
2、返回主界面
#tmux detach
3、进入一个会话
#tmux attach -t 会话名称
4、查看会话列表(主界面)
#tmux ls
5、彻底结束一个会话(主界面),(在Xshell中相当Ctrl+D或者直接键入exit,并回车)
#tmux kill-session -t 会话名称
6、切换会话(在session里面切换)
#tmux switch -t 会话名称
7、重命名 会话
#tmux rename-session -t <old-session-name> <new-session-name>
窗口操作
1、tmux split-window命令用来划分窗格。(先tmux attach -t 会话名称 进入会话)
# 划分上下两个窗格
$ tmux split-window
# 划分左右两个窗格
$ tmux split-window -h
第一步很重要,只要你的屏幕够大,可以在tmux的某个会话中不管是上下还是左右,随意增加会话框。如下图:
2、移动光标(这里有快捷键,可以自己了解一下,因为比较偏门,所以我个人不太喜欢用)
# 光标切换到上方窗格
$ tmux select-pane -U
# 光标切换到下方窗格
$ tmux select-pane -D
# 光标切换到左边窗格
$ tmux select-pane -L
# 光标切换到右边窗格
$ tmux select-pane -R
注意:这里有个快捷键比较实用,如果上面命令记不住的话,可以用同时按住Ctrl+b,然后再按o键,进行切换窗口。
3、恢复原始主界面
如果当前光标在主界面就用exit,如果在某个会话里面,可以使用tmux detach返回。
参考:
https://www.linuxprobe.com/better-screen-tmux.html
https://zhuanlan.zhihu.com/p/102546608
http://www.ruanyifeng.com/blog/2019/10/tmux.html