介绍
有时候我们需要在命令行里同时开多个程序,但是每个程序都会占用命令行,这时候可以用tmux,给命令行界面分栏.
基本概念
tmux是分多层的
会话>窗口(我下文称作:页)>面板(或者叫做窗格,分栏)
每个会话可以有多个窗口,每个窗口可以有多个面板,面板就是一个单独的shell了.
安装
只需要一行命令
apt install tmux -y
运行
在命令行执行tmux就能运行了,可以看到命令行界面有些"变化"
如果你在上次运行的时候,ssh不小心断了,可以用这个命令恢复:
tmux attach
使用方法
1:所有操作之前都要按下Ctrl+B(后文简称快捷键)
2:所有操作的对象都是"焦点"所在的命令行(绿色方块):
分栏:
分栏是针对当前"焦点"所在的窗格进行的,如果是第二次,或者更多次分栏,操作前要把焦点切换到目标窗格.
竖着切:
按下快捷键后松开,接着快速按"%"键(这个键,你可能需要跟着Shift一起按,你应该知道原因的...)
横着切:
按下快捷键后松开,接着快速按 双引号 " 键(记得跟Shift一起按)
把焦点转移到别的分栏:
按快捷键后松开,用方向键控制
调整窗格大小:
按下快捷键后只松开B,持续按住Ctrl,这时候用方向键能调整大小
快速切换窗格:
其实每个窗格都有一个ID,按快捷键,松开后按q可显示出来,这时候按下ID数字对应的按键即可跳转(要快速,在数字消失前按下)
关闭指定窗格:
在窗格里执行exit
或者按快捷键后松开,然后按x
结束会话(关闭当前会话所有窗口,所有分栏,回到shell):
按快捷键后松开,按"&"(带Shift吧~),注意看下面,会向你确认是否要退出.
多窗口模式
有时候一个屏幕容纳不下那么多的窗格,tmux还支持分页!
创建页:
快捷键,松开,按c(小写的,这回不用带shift了)
切换页:
上一个:快捷键,松开,按p
下一个:快捷键,松开,按n
关闭页:
快捷键,松开,按&
查看列表(可选择切换):
快捷键,松开,按w
会话
用到多会话的频率可能不高.但会话是网络断开后会持续存在的,每次运行tmux命令都会建立一个新会话.如果脱离,可用上文提到的命令来恢复:
tmux attach
脱离会话回到shell:
快捷键,松开,按d
如果同时开启了多个会话,可以用大写D选择要脱离的会话!
想恢复可以用这个命令:
tmux attach
退出会话:
把所有窗格关闭,这样会导致分页关闭,分页全部关闭会导致会话关闭...
最快的方式:
连续这样操作:
快捷键,松开,按& 按y
问题处理
运行时提示: need UTF-8 locale (LC_CTYPE) but have ***
执行这个即可,需要root权限:
locale-gen "en_US.UTF-8"&& dpkg-reconfigure locales
更多资料
http://blog.csdn.net/longxibendi/article/details/38541005
http://blog.csdn.net/trochiluses/article/details/9773103