Tmux入门
本指南将介绍Tmux的安装和基本用法,以使您入门和运行。
什么是tmux? #
Tmux是终端多路复用器,是GNU Screen的替代产品。 换句话说,这意味着您可以启动Tmux会话,然后在该会话中打开多个窗口。 每个窗口都占据整个屏幕,并且可以分成矩形窗格。
使用Tmux,您可以在一个终端中轻松地在多个程序之间切换,分离它们并将它们重新连接到另一终端。
Tmux会话是持久性的,这意味着即使断开连接,在Tmux中运行的程序仍将继续运行。
Tmux中的所有命令均以前缀开头,默认情况下为 ctrl+b
。
本文也有俄语版本。
安装Tmux#
您可以使用发行版的软件包管理器轻松安装Tmux。
在Ubuntu和Debian上安装Tmux#
sudo apt install tmux
在CentOS和Fedora上安装Tmux#
sudo yum install tmux
在macOS上安装Tmux#
brew install tmux
开始您的第一个Tmux会话#
要开始您的第一个Tmux会话,只需键入 tmux
在您的控制台中:
tmux
这将打开一个新会话,创建一个新窗口,并在该窗口中启动一个shell。
进入Tmux后,您会在屏幕底部看到一条状态行,其中显示有关当前会话的信息。
现在,您可以运行第一个Tmux命令。 例如,要获取所有命令的列表,请输入:
Ctrl+b
?
创建命名的Tmux会话
默认情况下,Tmux会话以数字命名。 当您运行多个Tmux会话时,命名会话很有用。 要创建新的命名会话,请运行 tmux
带有以下参数的命令:
tmux new -s session_name
选择一个描述性的会话名称总是一个好主意。
从Tmux会话中分离
您可以通过以下命令从Tmux会话中分离出来并返回到正常的shell:
Ctrl+b
d
从会话中分离后,在Tmux会话中运行的程序将继续运行。
重新附加到Tmux会话编号
要首先附加到会话,您需要找到会话的名称。 要获取当前正在运行的会话的列表,请输入:
tmux ls
会话的名称是输出的第一列。
0: 1 windows (created Sat Sep 15 09:38:43 2018) [158x35]
my_named_session: 1 windows (created Sat Sep 15 10:13:11 2018) [78x35]
从输出中可以看到,有两个正在运行的Tmux会话。 第一个被命名 0
第二个 my_named_session
。
例如,附加到会话 0
,您将输入:
tmux attach-session -t 0
使用Tmux Windows和窗格#
默认情况下,启动新的Tmux会话时,它将创建一个带有外壳的单个窗口。
用外壳类型创建一个新窗口 Ctrl+b
c
,范围内的第一个可用数字 0...9
将分配给它。
所有窗口的列表显示在屏幕底部的状态行上。
以下是一些用于管理Tmux窗口和窗格的最常用命令:
Ctrl+b
c
创建一个新窗口(带外壳)Ctrl+b
w
从列表中选择窗口Ctrl+b
0
切换到窗口0(按数字)Ctrl+b
,
重命名当前窗口Ctrl+b
%
将当前窗格水平拆分为两个窗格Ctrl+b
"
将当前窗格垂直拆分为两个窗格Ctrl+b
o
转到下一个窗格Ctrl+b
;
在当前窗格和上一个窗格之间切换Ctrl+b
x
关闭当前窗格
自定义Tmux#
启动Tmux时,它将从以下位置读取其配置参数: ~/.tmux.conf
如果文件存在。
这是一个样本 ~/.tmux.conf
具有自定义状态行和一些其他选项的配置:
〜/ .tmux.conf
# Improve colors
set -g default-terminal 'screen-256color'
# Set scrollback buffer to 10000
set -g history-limit 10000
# Customize the status line
set -g status-fg green
set -g status-bg black
Tmux基本用法
以下是开始使用Tmux的最基本步骤:
- 在命令提示符下,键入
tmux new -s my_session
, - 运行所需的程序。
- 使用按键顺序
Ctrl-b
+d
从会话中分离。 - 通过键入以下内容重新连接到Tmux会话
tmux attach-session -t my_session
。
结论#
在本教程中,您学习了如何使用Tmux。 现在,您可以在一个会话中开始创建多个Tmux窗口,通过创建新窗格来拆分窗口,在窗口之间导航,分离和恢复会话,并使用 .tmux.conf
文件。
要了解有关Tmux类型的更多信息 man tmux
在您的终端中或访问Tmux用户手册页面。
如果您有任何疑问或反馈,请随时发表评论。
tmux终端