Tmux 使用教程,常用命令及快捷方式

​一、Tmux 是什么?

1. 会话与进程

命令行的典型使用方式是,打开一个终端窗口(terminal window,以下简称 “窗口”),在里面输入命令。用户与计算机的这种临时的交互,称为一次 “会话”(session) 。

会话的一个重要特点是,窗口与其中启动的进程是连在一起的。打开窗口,会话开始;关闭窗口,会话结束,会话内部的进程也会随之终止,不管有没有运行完。

一个典型的例子就是,SSH 登录远程计算机,打开一个远程窗口执行命令。这时,网络突然断线,再次登录的时候,是找不回上一次执行的命令的。因为上一次 SSH 会话已经终止了,里面的进程也随之消失了。

为了解决这个问题,会话与窗口可以 “解绑”:窗口关闭时,会话并不终止,而是继续运行,等到以后需要的时候,再让会话 “绑定” 其他窗口。

二、Tmux 的作用

Tmux 就是会话与窗口的 “解绑” 工具,将它们彻底分离。

  • 它允许在单个窗口中,同时访问多个会话。这对于同时运行多个命令行程序很有用。
  • 它可以让新窗口 “接入” 已经存在的会话。
  • 它允许每个会话有多个连接窗口,因此可以多人实时共享会话。
  • 它还支持窗口任意的垂直和水平拆分。

类似的终端复用器还有 GNU Screen。Tmux 与它功能相似,但是更易用,也更强大。

三、基本用法

1 安装

# Ubuntu系统
sudo apt-get install tmux

# CentOS
$ sudo yum install tmux

# Mac
$ brew install tmux

2 启动与退出

安装完成后,键入tmux 命令,就进入了 Tmux 窗口。

tmux

上面命令会启动 Tmux 窗口,底部有一个状态栏。状态栏的左侧是窗口信息(编号和名称),右侧是系统信息。

按下 Ctrl+d 或者显式输入 exit 命令,就可以退出 Tmux 窗口。

exit

3. 常用操作指令及快捷键

# 查看有所有tmux会话
指  令:tmux ls
快捷键:Ctrl+b s

# 切换窗口
ctrl+b c: 创建一个新窗口(状态栏会显示多个窗口的信息)
ctrl+b p: 切换到上一个窗口(按照状态栏的顺序)
ctrl+b n: 切换到下一个窗口
ctrl+b w: 从列表中选择窗口(这个最好用)

# 新建tmux窗口
指  令:tmux new -s <session-name>

# 重命名会话
指  令:tmux rename-session -t <old-name> <new-name>
快捷键:Ctrl+b $

# 分离会话
指  令:tmux detach  或者使用  exit(关闭窗口)
快捷键:Ctrl+b d

# 重新连接会话
指  令:tmux attach -t <session-name>  或者使用 tmux at -t <session-name>

#平铺当前窗格(个人很喜欢的快捷键,注意:平铺的是当前选中的窗格)
快捷键:Ctrl+b z (再次 Ctrl+b z 则恢复)

# 杀死会话
指  令:tmux kill-session -t <session-name>

# 切换会话
指  令:tmux switch -t <session-name>

# 划分上下两个窗格
指  令:tmux split
快捷键:Ctrl+b “

# 划分左右两个窗格
指  令:tmux split -h
快捷键:Ctrl+b %

# 光标切换到上方窗格
指  令:tmux select-pane -U
快捷键:Ctrl+b 方向键上

# 光标切换到下方窗格
指  令:tmux select-pane -D
快捷键:Ctrl+b 方向键下

# 光标切换到左边窗格
指  令:tmux select-pane -L
快捷键:Ctrl+b 方向键左

# 光标切换到右边窗格
指  令:tmux select-pane -R
快捷键:Ctrl+b 方向键右

四、常用命令

Ctrl+b激活控制台;此时以下按键生效!!!

举个例子:
    帮助命令的快捷键是Ctrl+b ?
    它的用法是:在 Tmux 窗口中,先按下Ctrl+b,再按下?,就会显示帮助信息。

五、系统操作

?	列出所有快捷键;按q返回
d	脱离当前会话;这样可以暂时返回Shell界面,输入tmux attach能够重新进入之前的会话
D	选择要脱离的会话;在同时开启了多个会话时使用
Ctrl+z	挂起当前会话
r	强制重绘未脱离的会话
s	选择并切换会话;在同时开启了多个会话时使用
:	进入命令行模式;此时可以输入支持的命令,例如kill-server可以关闭服务器
[	进入复制模式;此时的操作与vi/emacs相同,按q/Esc退出
~	列出提示信息缓存;其中包含了之前tmux返回的各种提示信息

六、窗口操作

c	创建新窗口
&	关闭当前窗口
数字键	切换至指定窗口
p	切换至上一窗口
n	切换至下一窗口
l	在前后两个窗口间互相切换
w	通过窗口列表切换窗口
,	重命名当前窗口;这样便于识别
.	修改当前窗口编号;相当于窗口重新排序
f	在所有窗口中查找指定文本

七、面板操作

”	        将当前面板平分为上下两块
%	        将当前面板平分为左右两块
x	        关闭当前面板
!	        将当前面板置于新窗口;即新建一个窗口,其中仅包含当前面板
Ctrl+方向键	以1个单元格为单位移动边缘以调整当前面板大小
Alt+方向键	以5个单元格为单位移动边缘以调整当前面板大小
Space	        在预置的面板布局中循环切换;依次包括even-horizontal、even-vertical、main-horizontal、main-vertical、tiled
q	        显示面板编号
o	        在当前窗口中选择下一面板
方向键	        移动光标以选择面板
{
    
    	        向前置换当前面板
}	        向后置换当前面板
Alt+o	        逆时针旋转当前窗口的面板
Ctrl+o	        顺时针旋转当前窗口的面板

八、其他命令

# 列出所有快捷键,及其对应的 Tmux 命令
tmux list-keys

# 列出所有 Tmux 命令及其参数
tmux list-commands

# 列出当前所有 Tmux 会话的信息
tmux info

# 重新加载当前的 Tmux 配置
tmux source-file ~/.tmux.conf

猜你喜欢

转载自blog.csdn.net/weixin_45897172/article/details/140323618