tmux常⽤命令
tmux 是⼀个终端复⽤器(terminal multiplexer),⾮常有⽤,属于常⽤的开发⼯具。
⼀、Tmux 是什么?
1.1 会话与进程
命令⾏的典型使⽤⽅式是,打开⼀个终端窗⼝(terminal window,以下简称"窗⼝"),在⾥⾯输⼊命令。⽤户与计算机的这种临时的交互,称为⼀次"会话"(session)。
会话的⼀个重要特点是,窗⼝与其中启动的进程是连在⼀起的。打开窗⼝,会话开始;关闭窗⼝,会话结束,会话内部的进程也会随之终⽌,不管有没有运⾏完。
⼀个典型的例⼦就是,SSH 登录远程计算机,打开⼀个远程窗⼝执⾏命令。这时,⽹络突然断线,再次登录的时候,是不回上⼀次执⾏的命令的。因为上⼀次 SSH 会话已经终⽌了,⾥⾯的进程也随之消失了。
为了解决这个问题,会话与窗⼝可以"解绑":窗⼝关闭时,会话并不终⽌,⽽是继续运⾏,等到以后需要的时候,再让会话"绑定"其他窗⼝。
1.2 tmux 的作⽤
tmux 就是会话与窗⼝的"解绑"⼯具,将它们彻底分离。
(1)它允许在单个窗⼝中,同时访问多个会话。这对于同时运⾏多个命令⾏程序很有⽤。
(2)它可以让新窗⼝"接⼊"已经存在的会话。
(3)它允许每个会话有多个连接窗⼝,因此可以多⼈实时共享会话。
(4)它还⽀持窗⼝任意的垂直和⽔平拆分。
类似的终端复⽤器还有 GNU Screen。tmux 与它功能相似,但是更易⽤,也更强⼤。
⼆、基本⽤法
2.1 安装
tmux ⼀般需要⾃⼰安装。
CentOS 或 Fedora
sudo yum install tmux -y
2.2 启动与退出
安装完成后,键⼊tmux命令,就进⼊了 tmux 窗⼝。
tmux上⾯命令会启动 tmux 窗⼝,底部有⼀个状态栏。状态栏的左侧是窗⼝信息(编号和名称),右侧是系统信息。
按下Ctrl+d或者显式输⼊exit命令,就可以退出 tmux 窗⼝。
exit
2.3 前缀键
tmux 窗⼝有⼤量的快捷键。所有快捷键都要通过前缀键唤起。默认的前缀键是Ctrl+b,即先按下Ctrl+b,快捷键才会⽣效。
举例来说,帮助命令的快捷键是Ctrl+b ?。它的⽤法是,在 tmux 窗⼝中,先按下Ctrl+b,再按下?,就会显⽰帮助信息。
然后,按下ESC键或q键,就可以退出帮助。
三、会话管理
3.1 新建会话
第⼀个启动的 tmux 窗⼝,编号是0,第⼆个窗⼝的编号是1,以此类推。这些窗⼝对应的会话,就是 0 号会话、1 号会话。
使⽤编号区分会话,不太直观,更好的⽅法是为会话起名。
tmux new -s <session-name>
上⾯命令新建⼀个指定名称的会话。
3.2 分离会话
在 tmux 窗⼝中,按下Ctrl+b d或者输⼊tmux detach命令,就会将当前会话与窗⼝分离。
tmux detach
上⾯命令执⾏后,就会退出当前 tmux 窗⼝,但是会话和⾥⾯的进程仍然在后台运⾏。
tmux ls命令可以查看当前所有的 tmux 会话。
tmux ls
tmux list-session
3.3 接⼊会话
tmux attach命令⽤于重新接⼊某个已存在的会话。
使⽤会话编号
tmux attach -t 0
使⽤会话名称
tmux attach -t <session-name>
3.4 杀死会话
tmux kill-session命令⽤于杀死某个会话。
使⽤会话编号
tmux kill-session -t 0
使⽤会话名称
tmux kill-session -t <session-name>
3.5 切换会话
tmux switch命令⽤于切换会话。
使⽤会话编号
tmux switch -t 0
使⽤会话名称
tmux switch -t <session-name>
3.6 重命名会话
tmux rename-session命令⽤于重命名会话。
tmux rename-session -t 0 <new-name>
上⾯命令将0号会话重命名。
3.7 会话快捷键
下⾯是⼀些会话相关的快捷键。
Ctrl+b d:分离当前会话。
Ctrl+b s:列出所有会话。
Ctrl+b $:重命名当前会话。
四、最简操作流程
综上所述,以下是 Tmux 的最简操作流程。
新建会话tmux new -s my_session
在 tmux 窗⼝运⾏所需的程序。
按下快捷键Ctrl+b d将会话分离。
下次使⽤时,重新连接到会话tmux attach-session -t my_session
五、窗格操作
tmux 可以将窗⼝分成多个窗格(pane),每个窗格运⾏不同的命令。以下命令都是在 tmux 窗⼝中执⾏。
5.1 划分窗格
tmux split-window命令⽤来划分窗格。
划分上下两个窗格
tmux split-window
划分左右两个窗格
tmux split-window -h
5.2 移动光标
tmux select-pane命令⽤来移动光标位置。
光标切换到上⽅窗格
panetmux select-pane -U
光标切换到下⽅窗格
tmux select-pane -D
光标切换到左边窗格
tmux select-pane -L
光标切换到右边窗格
tmux select-pane -R
5.3 交换窗格位置
tmux swap-pane命令⽤来交换窗格位置。
当前窗格上移
tmux swap-pane -U
当前窗格下移
tmux swap-pane -D
5.4 窗格快捷键
下⾯是⼀些窗格操作的快捷键。
Ctrl+b %:划分左右两个窗格。
Ctrl+b ":划分上下两个窗格。
Ctrl+b <arrow key>:光标切换到其他窗格。<arrow key>是指向要切换到的窗格的⽅向键,⽐如切换到下⽅窗格,就按⽅向键↓。Ctrl+b ;:光标切换到上⼀个窗格。
Ctrl+b o:光标切换到下⼀个窗格。
Ctrl+b {:当前窗格与上⼀个窗格交换位置。
Ctrl+b }:当前窗格与下⼀个窗格交换位置。
Ctrl+b Ctrl+o:所有窗格向前移动⼀个位置,第⼀个窗格变成最后⼀个窗格。
Ctrl+b Alt+o:所有窗格向后移动⼀个位置,最后⼀个窗格变成第⼀个窗格。
Ctrl+b x:关闭当前窗格。
Ctrl+b !:将当前窗格拆分为⼀个独⽴窗⼝。
Ctrl+b z:当前窗格全屏显⽰,再使⽤⼀次会变回原来⼤⼩。
Ctrl+b Ctrl+<arrow key>:按箭头⽅向调整窗格⼤⼩。
Ctrl+b q:显⽰窗格编号。
六、窗⼝管理
除了将⼀个窗⼝划分成多个窗格,tmux 也允许新建多个窗⼝。
6.1 新建窗⼝
tmux new-window命令⽤来创建新窗⼝。
新建⼀个指定名称的窗⼝
tmux new-window -n <window-name>
6.2 切换窗⼝
tmux select-window命令⽤来切换窗⼝。
切换到指定编号的窗⼝
tmux select-window -t <window-number>
切换到指定名称的窗⼝
tmux select-window -t <window-name>
重命名窗⼝
tmux rename-window命令⽤于为当前窗⼝起名(或重命名)。
tmux rename-window <new-name>
6.4 窗⼝快捷键
下⾯是⼀些窗⼝操作的快捷键。
Ctrl+b c:创建⼀个新窗⼝,状态栏会显⽰多个窗⼝的信息。
Ctrl+b p:切换到上⼀个窗⼝(按照状态栏上的顺序)。
Ctrl+b n:切换到下⼀个窗⼝。
Ctrl+b <number>:切换到指定编号的窗⼝,其中的<number>是状态栏上的窗⼝编号。Ctrl+b w:从列表中选择窗⼝。
Ctrl+b ,:窗⼝重命名。
七、其他命令
下⾯是⼀些其他命令。
列出所有快捷键,及其对应的 tmux 命令
tmux list-keys
列出所有 tmux 命令及其参数
tmux list-commands
列出当前所有 tmux 会话的信息
tmux info
重新加载当前的 Tmux 配置
tmux source-file ~/.f
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论