一、什么是TMUX
Tmux是一个优秀的终端复用软件,类似GNU Screen,但来自于OpenBSD,采用BSD授权。使用它最直观的好处就是,通过一个终端登录远程主机并运行tmux后,在其中可以开启多个控制台而无需再“浪费”多余的终端来连接这台远程主机;是BSD实现的Screen替代品,相对于Screen,它更加先进:支持屏幕切分,而且具备丰富的命令行参数,使其可以灵活、动态的进行各种布局和操作。下面就Tmux的使用做一梳理:
1)Tmux功能:
- 提供了强劲的、易于使用的命令行界面。
- 可横向和纵向分割窗口。
- 窗格可以自由移动和调整大小,或直接利用四个预设布局之一。
- 支持 UTF-8 编码及 256 色终端。
- 可在多个缓冲区进行复制和粘贴。
- 可通过交互式菜单来选择窗口、会话及客户端。
- 支持跨窗口搜索。
- 支持自动及手动锁定窗口。
2)Tmux安装
a)ubuntu版本下直接apt-get安装
- 1
sudo apt-get install tmux
- 1
b)centos7版本下直接yum安装
yum install -y tmux
- 1
Tmux官网:http://tmux.github.io/
3、Tmux配置
tmux 的配置文件位于 $HOME/.tmux.conf (以及一个全局的 /etc/tmux.conf),和大多数 dotfile 一样,把配置项写到这个文件中,启动 tmux的时候就会自动读取了。
tmux所有的操作前都需要加一个前缀。这个前缀是可以自己配置的。如果不配置的话,默认是 ctrl +b。配置的话:
set -g prefix C-a //把prefix绑定为Ctrl+a
unbind C-b //把Ctrl+b取消绑定
set -g base-index 1 //window的索引,默认从0开始
set -g pane-base-index 1 //panel的索引,默认从1开始
- 1
- 2
- 3
- 4
Warning 修改tmux.conf文件后不会立即生效, 你需要关闭所有tmux窗口或键入 PREFIX : 并输入 source-file ~/.tmux.conf
二、TMUX主要用来干嘛
1、切换窗口,记录操作
例如我们有时候需要用到root权限,但是用root需要输密码,实在麻烦。这个时候,我们就可以用Tmux来创建一个root窗口。然后下次直接切换到该窗口即可。
2、当服务器端需要不间断的跑shell脚本的时候。正常情况下,我们在当前窗口跑shell脚本,当窗口关闭的时候,我们的脚本就自己停了。但是很多时候,我们的需求是脚本不能停。这个时候就需要开一个Tmux窗口跑我们的shell脚本。只要不删除迪奥这个窗口,脚本就不会停止。
3、在需要同时在服务器上操作的时候。利用xshell打开新窗口太慢,而Tmux工具恰好可以实现类似于window窗口的效果。我们只需要新开一个Tmux窗口,这样就满足需求了。
三、TMUX的基本操作
1、查看当前所有的tmux窗口
tmux ls
- 1
效果:
这里列出的就是当前所有的tmux窗口。
mysql,nginx等代表的是窗口的名称,这部分我们可以自己取名字的。
2、进入tmux并且创建新的window窗口
//进入tmux
tmux attch
//创建一个新的窗口,-s后面跟的是窗口的名称。
tmux new -s ljf
- 1
- 2
- 3
- 4
3、进入tmux中查看当前所有的窗口
//进入tmux
tmux attch\
//查看tmux下的所有窗口。这部分是先按ctrl和b,然后再按s即可
ctrl +b s
- 1
- 2
- 3
- 4
如图:
4、进入某个窗口,并且切换标签页。
1)进入窗口直接按enter即可
2)此时可以在底步看到有几个标签页。这里的window窗口相当于windows下的浏览器,新建窗口相当于新打开一个浏览器。每个标签页就相当于你此时浏览器上的页面。
如图:
*代表你当前在哪个标签页。
3)切换标签页
//向后翻页
ctrl +b +n
//向后翻页
ctrl+b+p
- 1
- 2
- 3
- 4
5、创建新的标签页,以及推出标签页
//创建标签页
ctrl +b +c
//退出tmux
ctrl +b +d
- 1
- 2
- 3
- 4
如果用ctrl +b +d退出的话,会直接退出tmux,不过我们的所有操作还会存在,不会受影响的。
5、查看当前窗口下的所有标签页,并且完全退出某个窗口,相当于删除窗口
//列出当前标签页下的所有标签
ctrl +b +w
//注意,此处相当于杀掉这个窗口。此时在用tmux ls查看窗口就发现我们新建的窗口已经被删掉了。慎用
exit
- 1
- 2
- 3
- 4
6、修改标签页的名称。以及删除window的另一种方法
//进入一个window,按照该命令即可修改标签页的名字
ctrl +b + ,
//删除window,此时会有确认删除的窗口。点击确认之后,查看tmux ls会发现新建的窗口已经被删除了。
ctrl +b +&
- 1
- 2
- 3
- 4
四、总结
总体来说,这个tmux工具对我们的开发来说,真的很方便。强烈推荐大家掌握基础的操作方法。我自己也是今天才开始正式学,所以也是从新操作一遍。
参考链接:Linux终端复用神器-Tmux使用梳理 - 散尽浮华 - 博客园
https://www.jianshu.com/p/ec9c372e33f5
http://www.xinxiblog.com:8080/1systems/linuxs/commands/tools/tmux.html?highlight=tmux
end