基础

官网

终端复用软件 (terminal multiplexer)

BSD协议

C/S 模型构建

主要包括以下单元模块:

  • server 服务器。输入 tmux 命令时就开启了一个服务器
  • session 会话。一个服务器可以包含多个会话
  • window 窗口。一个会话可以包含多个窗口
  • pane 面板。一个窗口可以包含多个面板

安装与配置

安装

# archlinux
pacman -S tmux
# Ubuntu
apt-get install tmux
# Centos
yum install tmux

配置

配置文件实际上就是 tmux 的命令集合,也就是说每行配置均可在进入命令行模式后输入生效。更改配置之后需要重启 tmux 或者进入命令模式(按按键前缀后再按: ) 输入 source-file ~/.tmux.conf 即可。 配置文件地址(若不存在,则新建):

  • /etc/tmux.conf 存储的是系统中所有用户的全局配置
  • ~/.tmux.conf 存储的时用户个人的配置

基本配置:

//  prefix 键设为 Ctrl+a
set -g prefix C-a
// 解除 Ctrl+b 的绑定
unbind C-b
// 设置 prefix + r 为加载配置文件按键,并提示 Config reloaded..
bind r source-file ~/.tmux.conf \; display "Config reloaded.."
// 设置窗口编号从 1 开始,默认是 0
set -g base-index 1

命令

// ### bash 中
// 列出所有快捷键和其执行的命令
tmux list-keys
 
// 列出所有命令及其参数
tmux list-commands
 
// 服务器信息
tmux info
 
// 新建会话
tmux [new -s 会话名 -n 窗口名]
 
// 恢复会话
tmux a [-t 会话名]
 
// 列出所有会话
tmux ls
 
// 关闭会话
tmux kill-session -t 会话名
 
// 关闭所有会话
tmux kill-server
 
// 重命名会话
tmux rename -t 现会话名 新会话名
 
 
// ### tmux 中,先按下 prefix键,默认 Ctrl+b
// #### 会话
//冒号,进入命令行模式
prefix + :
 
// 列出所有会话
prefix + s
 
// 切换回上一个会话
prefix + L
 
// 重命名当前会话
prefix + $
 
// 离开会话,后台运行
prefix + d
 
// #### 窗口
// 创建新窗口
prefix + c
 
// 列出所有窗口
prefix + w
 
// 切换前一个窗口
prefix + p
 
// 切换后一个窗口
prefix + n
 
// 查找窗口
prefix + f
 
// 重命名当前窗口
prefix + ,
 
//关闭当前窗口
prefix + &
 
// 调整窗口排序(命令行模式下)
swap-window -s 3 -t 1  交换 3 号和 1 号窗口
swap-window -t 1      交换当前和 1 号窗口
move-window -t 1      移动当前窗口到 1  
// #### 面板
// 垂直分割
prefix + %
 
// 水平分割
prefix + "
 
// 显示每个面板的序号,当数字出现时按相应数字切换到其中
prefix + q
 
// 切换到下一个面板
prefix + o
 
// 切换默认布局
prefix + 空格
 
// 关闭当前面板
prefix + x
 
// 面板最大化/还原
prefix + z
 
// 与上个面板交换位置
prefix + {
 
// 与下个面板交换位置
prefix + }
 
 
// #### 杂项
// 时钟
prefix + t
 
// 列出所有快捷键
prefix + ?

参考