TMUX
这篇文章是阮一峰编写的 Tmux 使用教程,旨在介绍这款强大的终端复用器(terminal multiplexer)的基本概念和常用操作。以下是文章的主要内容总结: https://www.ruanyifeng.com/blog/2019/10/tmux.html
1. Tmux 是什么?
- 核心功能:Tmux 实现了“会话”(session)与“窗口”(window)的解绑。
- 解决痛点:传统终端中,关闭窗口会导致会话结束、进程终止(例如 SSH 断线后任务丢失)。Tmux 允许会话在后台持续运行,用户可以随时重新连接(attach)到之前的会话,恢复工作状态。
- 主要优势:
- 单个窗口访问多个会话。
- 新窗口可接入已有会话。
- 支持多人实时共享会话。
- 支持窗口的任意垂直和水平拆分。
2. 基本用法
- 安装:支持 Ubuntu/Debian (
apt-get)、CentOS/Fedora (yum) 和 Mac (brew)。 - 启动与退出:输入
tmux启动;输入exit或按Ctrl+d退出当前窗口。 - 前缀键(Prefix Key):所有快捷键需先按前缀键触发,默认为
Ctrl+b(即先按Ctrl+b,松开后再按功能键)。
3. 核心操作指南
A. 会话管理 (Session)
- 新建:
tmux new -s <名称> - 分离(后台运行):快捷键
Ctrl+b d或命令tmux detach。这是最常用的操作,用于暂时离开但保持程序运行。 - 重连:
tmux attach -t <名称或编号> - 查看列表:
tmux ls - 其他:支持切换 (
switch)、重命名 (rename-session) 和杀死 (kill-session) 会话。
B. 窗格操作 (Pane) - 分屏功能
Tmux 可以将一个窗口分割成多个窗格,每个窗格独立运行命令。
- 划分:
Ctrl+b %:左右划分。Ctrl+b ":上下划分。
- 切换光标:
Ctrl+b+ 方向键(↑↓←→)。 - 调整大小:
Ctrl+b+Ctrl+ 方向键(或Alt+ 方向键,视配置而定)。 - 关闭窗格:
Ctrl+b x。 - 全屏/还原:
Ctrl+b z。
C. 窗口管理 (Window)
除了分屏,Tmux 还支持在一个会话内创建多个类似浏览器标签页的“窗口”。
- 新建:
Ctrl+b c。 - 切换:
Ctrl+b n(下一个),Ctrl+b p(上一个), 或Ctrl+b <数字>(直接跳转)。 - 重命名:
Ctrl+b ,。
4. 最简工作流程
文章推荐了一个最简单的使用闭环:
- 新建会话:
tmux new -s my_session - 运行程序。
- 暂时离开:按
Ctrl+b d分离会话。 - 下次回来:
tmux attach -t my_session恢复现场。
5. 其他提示
- 可以通过
tmux list-keys查看所有快捷键。 - 可以通过修改配置文件
~/.tmux.conf来自定义行为(如修改前缀键、开启鼠标支持等)。 - 文章底部评论区包含大量用户实战经验,如解决 SSH 断线问题、鼠标模式开启方法 (
set -g mouse on) 以及常用快捷键的补充。
总的来说,这是一篇非常适合开发者的入门指南,强调了 Tmux 在保持长时间运行任务和高效管理多个终端任务方面的价值。