tmux学习

一、tmux的介绍

终端复用软件,更高效的操作终端,提高工作效率

二、tmux的安装

Linux 系统中通常使用 yum 来安装 tmux :

yum install tmux

Mac OS 通常使用 brew 来安装 tmux :

brew install tmux 

三、tmux中的名词

session, window , pane 在这里我们就把他们分别叫做会话,窗口,窗格 。

通常我们在终端中操作一个任务的时候,一旦终端关闭,任务也就结束了,被强制关闭了,在 tmux 中 使用 session 就可以解决这个问题,我们可以把当前操作的任务隐藏起来,在视觉上让它消失,任务继续执行着,当我们想返回任务做一些操作的时候,它可以很方便的回来,我们通常把上面的操作就做 session 操作,我们可以把 session 给隐藏起来,我们也可以把 session 给真的关掉。

在 tmux 中有一个窗口的概念,我们可以这样要去理解窗口:当前呈现在我们面前的这一个工作区域就是一个窗(当前的终端界面),窗口可以被不断切割,切割成一个个小块,这一个个小块我们叫做窗格(pane),这就是窗口和窗格的概念,我们把它想象成一块大蛋糕可以切成很多小块蛋糕,窗口可以被分割成很多小的窗格。

总结: 一个 session 通常指一个任务里面可以有很多窗口,一个窗口又可以有很多的窗格。

四、tmux的前缀键

tmux 中的很多操作都是通过快捷键来实现的,通过快捷键我们可以更加高效的完成任务,这也是很多人喜欢 tmux 的一个主要原因。

如果想使用 tmux 中的快捷键,我们必须使用 tmux 的前缀按键 ctrl + b , 在 tmux中所有的快捷键都需要通过前缀按键去唤起的。

在 tmux 当中默认的前缀按键是 ctrl + b , 这个前缀按键不是很友好,ctrl 和 b 的距离真的是太长了,操作起来不是很舒心,当然这个前缀按键是可以通过 tmux 的配置文件 .tmux.conf 进行修改的。

五、tmux 的 session 常用操作

5.1、新建session

tmux

上面的命令会创建一个 session ,默认是通过数字编号来命令的,有时候我们需要明确的知道我们的 session 的名字,方便我们快速进入该 session ,我们可以使用如下的命令:

tmux new -s <session-name>

例如新建一个名称是 yanchi 的session : tmux new -s yanchi

5.2、离开session

有时候我们需要离开终端,操作其他的任务,需要离开该任务,但是又想该任务继续在后台执行,这时候我们需要在 tmux 的任何一个窗格中输入如下命令:

tmux detach

快捷键:ctrl + b d

5.3、查看 session 列表

tmux ls

快捷键: ctrl + b s

5.4、进入session

tmux attach -t <session-name>
# 简写: tmux a -t <session-name>

5.5、关闭 session

tmux kill-session -t <session-name>

例如关闭 yanchi 这个session : tmux kill-session -t yanchi

快捷键:ctrl + d (关闭当前session)

5.6、切换session

tmux switch -t <session-name>

5.7、重命名session

tmux rename-session -t <old-session-name> <new-session-name>

快捷键:ctrl + b $ (重命名当前session)

session总结

session 在 tmux 操作当中非常重要,希望你可以熟练的使用以上操作:

新建session
离开session
查看session列表
进入session
关闭session
不同session之间的切换
重命名session

六、tmux 的窗格常用操作

什么是窗格(pane)呢?

前文也提到过,这里在详细描述一下:当前我们的工作区域,一块工作屏幕我们叫做窗口,窗口是可以被分割的,当前的工作区域被分割的一块块区域就是窗格。

每一个窗格我们可以用来干不同的事情,窗格同窗格之间是相互独立的,可以想象我们使用 vim 来搭配 tmux 的窗格功能是不是很酷呢?

6.1、切割窗格

切割窗格分成上下两个窗格:

tmux split-window                                                  

快捷键:ctrl + b "

切割窗格分成左右两个窗格:

tmux split-window -h

快捷键:ctrl + b %

6.2、不同窗格间移动光标

把当前光标移动到上方的窗格

tmux select-pane  -U

把当前的光标移动的下方的窗格

tmux select-pane -D

把当前的光标移动到左边的窗格

tmux select-pane -L

把当前的光标移动到右边的窗格

tmux select-pane -R

移动窗格光标的快捷键:

ctrl +b <arrow key> 例如 ctrl +b ⬆ 会把光标移动到上方的窗格。

ctrl +b ; 光标切换到上一个窗格

ctrl +b o 光标切换到下一个窗格

6.2、交换窗格的位置

当前窗格向上移动

tmux swap-pane -U

当前窗格向下移动

tmux swap-pane -D

6.3、关闭当前的窗格

快捷键 ctrl + b x

6.4、放大窗格

快捷键 ctrl + b z

放大当前操作的窗格,继续触发该快捷键将会还原当前的窗格。

6.5、窗格显示时间

快捷键 ctrl +b t

当前的窗格当中显示时钟,非常酷炫的一个功能,点击 enter (回车键将会复原)。

窗格总结

关于窗格的操作我们经常操作的就是分割移动光标放大窗格关闭窗格,可以熟练以上提到的操作,关于移动光标的快捷键操作,下文在 .tmux.conf 中也会处理成快捷键进行操作。

七、tmux 的窗口常用操作

有时候一个窗口不够用,这样我们就需要重新创建一个窗口。

7.1、创建窗口

tmux new-window -n <window-name>

例如: tmux new-window -n yanchi 就是重新创建一个名字是 yanchi 的 window

快捷键ctrl + b c

7.2、切换窗口

tmux select-window -t <window-name>

切换窗口的快捷键 :

ctrl + b w 显示窗口列表可以通过 j ,k 上下进行选择窗口,然后回车进入指定的窗口。

ctrl + b n 快速切换到下一个窗口。

ctrl + b p 快速切换到上一个窗口。

7.3、重命名窗口

tmux rename-window <new-window-name>

例如 tmux rename-window yanchi 把当前窗口名为 yanchi

快捷键:ctrl + b ,

7.4、关闭窗口

tmux kill-window -t <window-name>

例如: tmux kill-window -t yanchi 删除名称为 yanchi 的窗口。

快捷键:ctrl + b &

窗口的总结

窗口的日常使用多是通过快捷键去操作,熟练掌握上面提到操作窗口的快捷键即可。

八、tmux 的配置文件

.tmux.conf

tmux 中的很多操作都是通过快捷键去实现的。

在 tmux 中我们可以通过 ctrl + b ? 来查找 tmux 的帮助文档,可以查询一些功能键的快捷键信息 ,在帮助文档中按下键盘上的 ESC 或者 q 键就可以退出帮助文档。

在 tmux中有一个配置文件 .tmux.conf ,在其中可以配置一些方便自己的 tmux 快捷键信息等,该文件 .tmux.conf 默认放在 ~(家目录) 目录下面,如果没有可以在 ~ 目录下面创建一个 .tmux.conf 文件即可。

在tmux 中默认的前缀键是 ctrl + b ,这个前缀键对我是十分不友好的,我通常会通过配置文件改成 ctrl + x, 因为我的手很容易触到 x 按键。

下面列出一份简单的 .tmux.conf 的配置文件,算是做为一个入门配置,如下所示

# below reset tmux prefix command key
set -g prefix C-x
unbind C-b
bind C-x send-prefix
# set swap pane key
bind-key k select-pane -U
bind-key j select-pane -D
bind-key h select-pane -L
bind-key l select-pane -R

该配置文件把 ctrl + b 改成了 ctrl + x , 还有多个窗格之间切换光标可以通过 ctrl + x k 切换到上一个窗格, ctrl + x j 切换到下一个窗格, ctrl +x h 切换到左边的窗格,ctrl + x l 切换到右边的窗格。

配置文件总结

关于 tmux 的配置文件的配置可以根据个人的习惯进行配置,配置的具体细节可以查询 google 或者 github。

### Tmux 安装 对于不同操作系统,Tmux 的安装方式有所不同。在基于 Debian 或 Ubuntu 的系统上,可以使用 `apt` 包管理器来完成安装: ```bash sudo apt-get install tmux ``` 而在 CentOS 或 RHEL 系统,则应采用 `yum` 来执行相同的操作[^4]。 ### 基本命令概览 了解一些基础的 Tmux 指令有助于快速上手该工具。例如,要查看所有的快捷键映射以及它们所关联的具体操作,可以运行如下指令: ```bash tmux list-keys ``` 如果想获取完整的内置命令列表连同各自的参数说明,那么下面这条语句将会很有帮助: ```bash tmux list-commands ``` 另外,通过 `$ tmux info` 可以得到当前所有会话的状态详情;当修改过 `.tmux.conf` 文件之后想要使更改生效的话,只需简单地输入: ```bash tmux source-file ~/.tmux.conf ``` 这将立即应用新的设置而不必重启程序[^1]。 ### 会话管理常用命令 创建一个新的会话非常直观,只需要调用 `new` 子命令即可建立默认名的新实例或者指定特定的名字给新启动的会话: ```bash tmux new -s mysession ``` 查询现有会话可通过以下命令实现: ```bash tmux ls ``` 连接至某个已存在的会话也很容易做到: ```bash tmux a -t mysession ``` 至于结束某一会话或是整个服务器进程也有相应的控制手段可供选用[^5]。 ### 高级特性与插件支持 除了上述提到的基础功能之外,Tmux 还提供了丰富的扩展能力供用户自定义工作环境。比如借助于第三方插件——Tmux Resurrect,能够保存并恢复复杂的布局结构,极大地方便了日常开发流程中的场景切换需求。其安装过程涉及克隆仓库到本地目录下: ```bash mkdir ~/.tmux && cd ~/.tmux git clone https://github.com/tmux-plugins/tmux-resurrect.git ``` 综上所述,无论是初学者还是有一定经验的技术人员都能找到适合自己水平的学习切入点,在掌握这些核心概念和技术细节的基础上进一步探索更多可能性[^2]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值