一文带你掌握 tmux -- 高效的终端复用工具

一、什么是tmux?

**tmux 是一款开源的终端复用器,允许用户在一个终端窗口中访问多个终端会话,同时提供了会话管理功能,使得用户可以在同一个窗口中创建、访问和控制多个会话。**它对于需要同时运行多个命令行程序的用户来说非常有用,尤其是对于远程工作的开发者而言,因为它能够在网络断开连接后继续保持会话运行。

1.1 主要特性

  • 会话管理tmux 支持用户断开连接后保持会话运行,之后可以重新连接会话,继续之前的工作,这对于远程工作的用户来说非常有用。
  • 窗口和面板 :用户可以在一个tmux会话中创建多个窗口,并且每个窗口可以被进一步划分为多个面板(Pane),每个面板都是一个独立的终端。
  • 可定制和脚本化tmux 允许用户通过配置文件~/.tmux.conf来定制键绑定和设置,也支持通过脚本来自动化复杂的任务。
  • 状态栏tmux提供了一个状态栏,显示有关当前会话的信息,如当前窗口和面板,时间等,用户可以自定义状态栏的内容。

1.2 使用示例

  • 启动新的tmux会话 :在终端中输入 tmux 命令可以启动一个新的会话。
  • 分离和附加会话 :用户可以从当前会话中分离(默认快捷键是 Ctrl+b d),并在之后通过命令 tmux attachtmux attach-session 重新连接到会话。
  • 创建窗口和面板 :在tmux中,用户可以通过快捷键创建新的窗口(Ctrl+b c)和面板(Ctrl+b % 创建垂直分割面板,Ctrl+b " 创建水平分割面板)。

1.3 获取和安装

tmux 可以在多数Linux发行版和macOS中通过包管理器安装。例如,在Ubuntu上,你可以使用以下命令安装:

bash 复制代码
sudo apt-get update sudo apt-get install tmux

在macOS上,可以使用Homebrew安装:

bash 复制代码
brew install tmux

通过学习和使用tmux,用户可以显著提高终端工作的效率和便捷性。

二、在Linux系统中运行tmux

2.1 新建一个tmux

bash 复制代码
tmux

2.2 tmux常用命令

tmux 是一个很强大的终端复用工具,它有很多命令可以帮助你创建、管理和操控多个终端会话。以下是一些常用的 tmux 命令:

  1. 创建新会话 :使用**tmux new -s mysession**创建一个新的 tmux 会话并命名为 "mysession"。

  2. 列出所有会话 :使用 tmux ls 命令查看当前所有的 tmux 会话。

  3. 附加到会话 :使用 tmux attach -t mysession 命令连接到名为 "mysession" 的会话。

  4. 切换会话 :使用 tmux switch -t mysession 命令切换到名为 "mysession" 的会话。

  5. 杀死会话 :使用**tmux kill-session -t mysession** 命令结束名为 "mysession" 的会话。

  6. 分离会话 :在 tmux 会话内按**Ctrl-b d 组合键可以分离当前会话**,这将返回到非 tmux 环境,但是 tmux 会话将继续在后台运行。

  7. 分割窗口 :在 tmux 会话内,使用 Ctrl-b % 可以垂直分割窗口,Ctrl-b " 可以水平分割窗口。

  8. 在窗口之间切换 :在 tmux 会话内,使用 Ctrl-b o 可以在窗格之间切换

  9. 关闭窗口 :在 tmux 会话内,使用 Ctrl-b x 可以关闭当前窗口

  10. 重新排列窗口 :在 tmux 会话内,使用 Ctrl-b 可以更改窗格的位置

  11. 列出所有快捷键 :在 tmux 会话内,使用 Ctrl-b ? 可以显示所有可用的快捷键绑定。

  12. 调整窗格大小 :在 tmux 会话内,使用 Ctrl-b Ctrl-方向键 可以调整窗格的大小。

  13. 最大化/恢复窗格 :在 tmux 会话内,使用 Ctrl-b z 可以最大化当前窗格,再次按下可以恢复。

  14. 滚动回看历史 :在 tmux 会话内,使用 Ctrl-b [ 可以进入复制模式,然后使用方向键或 Page Up/Page Down 键进行滚动。按 q 键退出复制模式。

  15. 复制文本 :在复制模式下,使用 Space 键开始选择文本,使用 Enter 键复制选中的文本。

  16. 粘贴文本 :在 tmux 会话内,使用 Ctrl-b ] 可以粘贴之前复制的文本。

  17. 创建新窗口 :在 tmux 会话内,使用 Ctrl-b c 可以创建一个新的窗口。

  18. 切换到下一个窗口 :在 tmux 会话内,使用 Ctrl-b n 可以切换到下一个窗口。

  19. 切换到上一个窗口 :在 tmux 会话内,使用 Ctrl-b p 可以切换到上一个窗口。

  20. 显示窗口列表 :在 tmux 会话内,使用 Ctrl-b w 可以显示当前会话的所有窗口列表,然后使用方向键选择并按 Enter 键切换到选中的窗口。

  21. 显示时间 :在 tmux 会话内,使用 Ctrl-b t 可以显示一个大时钟。

  22. 重新加载配置文件 :在 tmux 会话内,使用 Ctrl-b : 进入命令模式,然后输入 source-file ~/.tmux.conf 可以重新加载 tmux 配置文件。

相关推荐
喜欢吃燃面1 小时前
Linux:环境变量
linux·开发语言·学习
代码游侠1 小时前
ARM开发——阶段问题综述(二)
运维·arm开发·笔记·单片机·嵌入式硬件·学习
DLGXY2 小时前
STM32——旋转编码器计次(七)
stm32·单片机·嵌入式硬件
羽获飞2 小时前
从零开始学嵌入式之STM32——3.使用寄存器点亮一盏LED灯
单片机·嵌入式硬件
浩子智控3 小时前
商业航天计算机抗辐射设计
单片机·嵌入式硬件
佑白雪乐5 小时前
<Linux基础第10集>复习前面内容
linux·运维·服务器
春日见5 小时前
自动驾驶规划控制决策知识点扫盲
linux·运维·服务器·人工智能·机器学习·自动驾驶
暮云星影5 小时前
四、linux系统 应用开发:UI开发环境配置概述 (三)
linux·ui·arm
迷途知返-6 小时前
服务器——那些年我踩过的坑
linux
landonVM7 小时前
Linux 上搭建 Web 服务器
linux·服务器·前端