Tmux 实验

发布时间 2023-11-13 17:18:22作者: Ba11ooner

Tmux 实验

实验简介

本实验将介绍如何使用 Tmux 工具

Tmux 逻辑对象

Tmux 是一个终端复用工具,它允许用户在单个终端窗口中创建多个会话并在其间切换。

  • 会话(session)表示终端中的一个完整工作环境
    • 窗口(window)是不同工作环境或任务的切换
      • 窗格(pane)是窗口的进一步划分

简笔画黑色建筑房子素材免费下载 - 觅知网

房子可以看作会话,窗户可以看作窗口,窗口上隔开的就是窗格(图片源于网络)

  • tmux
    • session-1
      • window-1-1
        • pane-up
        • pane-down
        • pane-left
        • pane-right
      • window-1-2
    • session-2
      • window-2-1
Tmux 作用

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

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

类似于 vim 按下 ESC 丢失焦点,再按下 : 就能进入命令行模式

Tmux 在按下 Ctrl + B 后也会丢失焦点,此时再按其他按键,可以实现 Tmux 的控制
这种控制可以称为基于快捷键的控制,其作用等效于 Tmux 的控制语句

实验目的

通过本实验,您将学习如何使用Tmux工具来提高命令行环境的工作效率,实现多任务管理和窗口分割功能

实验过程

  1. 安装 Tmux
  2. 创建 2 个会话,分别命名为 session-1 和 session-2
  3. 在 session-1 中创建 2 个窗口,分别命名为 window-1-1 和 window-1-2
  4. 将 session-2 中的窗口重命名为 window-2-1
  5. 在 window-1-1 中划分出 4 个窗格
结构描述
  • session-1
    • window-1-1:田
      每个窗格内部还能继续划分,不只能划分成 4 个窗格
      • pane
      • pane
      • pane
      • pane
    • window-1-2
  • session-2
    • window-2-1

示例代码

安装 Tmux
apt install tmux
使用 Tmux

下面给出的是基于指令的使用方法,指令也可替换为对应的快捷键,作用等效

# 创建 tmux 会话
tmux

# 更改会话名称
tmux rename-session session-1

# 更改窗口名称
tmux rename-window window-1-1

# 划分窗格,此时自动聚焦下方窗格
tmux split-window
# 将下方窗格再划分为左右窗格
tmux split-window -h

# 切换窗格
tmux select-pane -U
# 将上方窗格再划分为左右窗格
tmux split-window -h

# 创建新窗口
tmux new-window -n window-1-2

# 分离 (detach) 当前会话
tmux detach

# 创建一个新的 tmux 会话
tmux new -s session-2

# 更改窗口名称
tmux rename-window window-2-1

# 切换会话
tmux switch -t session-1

# 退出当前会话
exit

# 删除所有会话
tmux kill-server

# 分离当前tmux会话
Ctrl+b, d

# 重新接入之前的tmux会话
tmux attach
常用快捷键

整理常用快捷键

会话快捷键
  • Ctrl+b d:分离当前会话。
  • Ctrl+b s:列出所有会话。
  • Ctrl+b $:重命名当前会话。
窗口快捷键
  • Ctrl+b c:创建一个新窗口,状态栏会显示多个窗口的信息。
  • Ctrl+b p:切换到上一个窗口(按照状态栏上的顺序)。
  • Ctrl+b n:切换到下一个窗口。
  • Ctrl+b <number>:切换到指定编号的窗口,其中的<number>是状态栏上的窗口编号。
  • Ctrl+b ,:窗口重命名。
窗格快捷键
  • Ctrl+b %:划分左右两个窗格。
  • Ctrl+b ":划分上下两个窗格。
  • Ctrl+b <arrow key>:光标切换到其他窗格。<arrow key>是指向要切换到的窗格的方向键,比如切换到下方窗格,就按方向键
  • Ctrl+b x:关闭当前窗格。
  • Ctrl+b z:当前窗格全屏显示,再使用一次会变回原来大小。

参考文档

Tmux 使用教程