Tmux 是终端复用器,支持在一个终端窗口运行多个会话,断开连接后会话仍持续运行,是远程服务器长任务与多窗口工作的核心工具。
安装
# Debian/Ubuntu
sudo apt update && sudo apt install tmux
# RHEL/Fedora
sudo dnf install tmux会话管理
tmux # 启动新会话
tmux new -s my_session # 启动并命名会话
tmux ls # 列出所有会话
tmux attach -t my_session # 重连会话
tmux kill-session -t my_session # 删除指定会话
tmux kill-server # 删除所有会话会话内输入 exit 或按 Ctrl-d 关闭当前会话。
快捷键
前缀键默认为 Ctrl-b,下表按键均为先按前缀再按对应键。
会话
| 快捷键 | 作用 |
|---|---|
d | 分离会话 |
s | 列出会话 |
$ | 重命名会话 |
窗口
| 快捷键 | 作用 |
|---|---|
c | 新建窗口 |
n / p | 下一个 / 上一个窗口 |
, | 重命名窗口 |
w | 列出所有窗口 |
窗格
| 快捷键 | 作用 |
|---|---|
% | 垂直分割 |
" | 水平分割 |
方向键 | 切换窗格 |
x | 关闭当前窗格 |
滚动与复制模式
Ctrl-b [进入复制模式- 方向键逐行滚动,或
Page Up/Down翻页 - 按
g输入行号跳转 - 按
q退出复制模式
配置文件
编辑 ~/.tmux.conf:
# 前缀键改为 Ctrl-a
unbind C-b
set-option -g prefix C-a
bind-key C-a send-prefix
# 启用鼠标支持
set -g mouse on
# 快捷重载配置
bind r source-file ~/.tmux.conf \; display "Reloaded!"重载配置:
tmux source-file ~/.tmux.conf会话持久化
使用 tmux-resurrect 插件保存和恢复会话:
# 安装 TPM
git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm在 ~/.tmux.conf 中添加:
set -g @plugin 'tmux-plugins/tpm'
set -g @plugin 'tmux-plugins/tmux-resurrect'
run '~/.tmux/plugins/tpm/tpm'重载配置后按 prefix + I 安装插件,prefix + Ctrl-s 保存会话,prefix + Ctrl-r 恢复会话。