Tmux入门
概述
ROS开发过程中,经常需要打开多个终端窗口,这就给开发带来了很多不便。本文介绍的Tmux工具可以很好的解决这个问题,Tmux可以创建多个会话(Session),每个会话中可以创建多个窗口(Wondow),每个窗口中又可以创建多个窗格(Pane)。基于上述优势,给开发带来了很多的便利。
基本使用
安装
- ubuntu:
sudo apt-get install tmux
简单使用
- 启动命令
tmux
- 退出命令
exit
前缀键
默认的前缀键为Ctr + b
,只有先按下Ctr + b
,快捷键才会生效。
会话管理
新建会话
第一次运行tmux
,默认创建的会话为0
。
tmux
也可以创建会话时指定会话名
tmux new -s <session-name>
分离会话
在会话模式下,使用快捷键Ctr+b d
,可以将当前会话与窗口分离,或者在窗口中输入下述命令:
tmux detach
此时,可以使用tnux ls
或tmux list-session
命令查看所有的会话,对应的快捷键为ctr+b s
。
接入会话
可以使用tmux attach
命令重新接入存在的会话,指定会话时,可以使用会话编号或者名称作为命令参数。
tmux attach -t <session-name>
其中,attach
可以简写为a
或at
如果接入最新的会话,命令如下:
tmux attach #
杀死会话
使用命令tmux kill-session
杀死某个会话,具体杀死指定的会话也同样可以使用编号或者名称。
tmux kill-session -t <session-name>
如果想杀死所有的会话,命令如下:
tmux ls | grep : | cut -d. -f1 | awk '{print substr($1, 0, length($1)-1)}' | xargs kill
或者直接关闭服务来关闭所有会话:
tmux kill-server
切换会话
命令tmux switch
用于切换会话。
tmux switch -t <session-name>
重命名会话
命令tmux rename-session
可以修改会话名称
tmux rename-session -t 0 <session-name>
相应的快捷键为ctr+b $
窗口管理
新建窗口
tmux new-window
用于创建新的窗口
tmux new-window
tmux new-window -n <window name>
切换窗口
tmux select-window
用于窗口间的切换
tmux select-window -t <window-name>
窗口重命名
tmux rename-window
命令用于为当前窗口重命名。
tmux rename-window <new-name>
窗口快捷键
Ctrl+b c
:(create window)创建一个新窗口,状态栏会显示多个窗口的信息Ctrl+b w
:(list windows)从列表中选择窗口Ctrl+b p
:(previous window)切换到上一个窗口(按照状态栏上的顺序Ctrl+b n
:(next window)切换到下一个窗口Ctrl+b ,
:(rename window)窗口重命名Ctrl+b f
:(find window)查找窗口Ctrl+b &
:(kill window)关闭当前窗口Ctrl+b <number>
:切换到指定编号的窗口,其中的是状态栏上的窗口编号
窗格操作
Tmux可以将窗口分割成多个窗格(pane),每个窗格可以执行不同的操作。
划分窗格
tmux split-window
命令可以用来划分窗格
- 划分上下两个窗格
tmux split-window
- 划分左右两个窗格
tmux split-window -h
移动光标
- 光标切换到上方窗格
tmux select-pane -U
- 光标切换到下方窗格
tmux select-pane -D
- 光标切换到左方窗格
tmux select-pane -L
- 光标切换到右方窗格
tmux select-pane -R
交换当前窗格位置
- 当前窗格上移
tmux swap-pane -U
- 当前窗格下移
tmux swap-pane -D
窗格快捷键
Ctrl+b %
:划分左右两个窗格。Ctrl+b "
:划分上下两个窗格。Ctrl+b ;
:光标切换到上一个窗格。Ctrl+b o
:光标切换到下一个窗格。Ctrl+b <arrow key>
:光标切换到其他窗格。是指向要切换到的窗格的方向键Ctrl+b Ctrl+o
:当前窗格上移。Ctrl+b Alt+o
:当前窗格下移。Ctrl+b {
:当前窗格左移。Ctrl+b }
:当前窗格右移。Ctrl+b x
:关闭当前窗格。Ctrl+b !
:将当前窗格拆分为一个独立窗口。Ctrl+b z
:当前窗格全屏显示,再使用一次会变回原来大小。Ctrl+b Ctrl+<arrow key>
:按箭头方向调整窗格大小。Ctrl+b q
:显示窗格编号。Ctrl+b +
:break pane into windowCtrl+b -
:restore pane from windowCtrl+b <space>
:切换窗格布局格式