文章目录
- 1 Tmux简介
- 1.1 会话与窗口
- 1.2 tmux功能
- 2 tmux安装
- 2.1 源码安装
- 2.2 命令行安装
- 3 基本用法(命令行)
- 3.1 创建窗口
- 3.2 分离会话 切换会话
- 3.3 连接会话
- 3.4 关闭会话并杀死进行
- 对会话进行重命名
- 4 Tmux 的快捷键
- 5 窗口操作与窗格操作
- 参考
1 Tmux简介
Tmux 是一个终端复用器(terminal multiplexer),在远程开发的时候,常常使用tmux进行远程会话,它可以将窗口(windows)与会话(session)分离,即使我们手动关闭了窗口,默认情况下在tmux中会话也是存在的(exit命令会退出),程序依然运行
1.1 会话与窗口
窗口: 打开一个终端窗口(terminal window)即图形界面,即为窗口,我们可以在里边进行操作,terminal中输入命令
会话: 用户与计算机的这种临时的交互,称为一次"会话"(session)
会话的一个重要特点:
窗口与其中启动的进程是连在一起的打开窗口,会话开始
关闭窗口,会话结束,会话内部的进程也会随之终止,不管有没有运行完
在远程执行命令的时候,长时间运行程序的时候,希望本地关闭窗口,而远程并不退出会话,此时需要将“窗口”与“会话”分离,而当我们需要的时候连接会话,并对会话进行管理;其中Tmux是一款很好用的工具,接下来简单介绍tmux的安装、tmux工作流与tmux命令
1.2 tmux功能
- 允许创建多个会话,可运行多个程序
- 允许会话断开与重连,并允许新窗口重连
- 允许多个窗口连接会话,即共享会话
- 允许窗口拆分
2 tmux安装
tmux为开源软件,允许多种安装方式
2.1 源码安装
git clone https://github.com/tmux/tmux.git
cd tmux
sh autogen.sh
./configure && make
2.2 命令行安装
# Ubuntu
sudo apt install tmux
# Mac
brew install tmux
关于Mac安装brew,可以参考我的博文:https://blog.csdn.net/qq_44776065/article/details/130957889
3 基本用法(命令行)
基本的流程为:
- 创建窗口 -> 列出窗口
- 在窗口中执行命令(配合一些快捷键) ->
- 分离会话 [切换窗口]
- 重连窗口 ->
- 关闭会话,并杀死
Tmux的命令行与语义基本相似,很好记忆
3.1 创建窗口
tmux new -s <session-name>
默认窗口编号为0并对应会话,依次递增
列出会话
tmux ls
tmux list-session
3.2 分离会话 切换会话
分离会话
tmux detach
关闭窗口的话默认为分离
切换会话
tmux switch-session -t <session-name>
3.3 连接会话
tmux attach -t <session-name>
3.4 关闭会话并杀死进行
在tmux中直接执行exit
命令即可直接退出窗口与session
执行命令
tmux kill-session -t <session-name>
对会话进行重命名
tmux rename-session -t <old-name> <new-name>
4 Tmux 的快捷键
Ctrl+b d:分离当前会话。
Ctrl+b s:列出所有会话。
Ctrl+b $:重命名当前会话。
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:显示窗格编号。
5 窗口操作与窗格操作
这个参考, 这里不多介绍
Tmux 使用教程 https://www.ruanyifeng.com/blog/2019/10/tmux.html
参考
Tmux 使用教程 https://www.ruanyifeng.com/blog/2019/10/tmux.html
tmux使用教程 https://zhuanlan.zhihu.com/p/98384704