名 称

tmux — 终 端 多 路 复 用 器

概 要

tmux [-2CDlNuVv] [-c 外 壳 命 令 ] [-f 文 件 ] [-L 套 接 字 名 称 ] [-S 套 接 字 路 径 ] [-T 特 征 ] [命 令  [符 号 ]]

描 述

tmux 是 一 个 终 端 多 路 复 用 器 : 它 允 许 从 单 个 屏 幕 创 建 、 访 问 和 控 制 多 个 终 端 。 tmux 可 以 从 屏 幕 上 分 离 并 继 续 在 后 台 运 行 , 然 后 重 新 附 加 。

tmux 被 启 动 时 , 会 创 建 一 个 新 的 会 话 , 其 中 包 含 一 个 窗 口 并 将 其 显 示 在 屏 幕 上 。 屏 幕 底 部 的 状 态 行 显 示 当 前 会 话 信 息 , 并 用 于 输 入 交 互 式 命 令 。

会 话 是 tmux 管 理 的 一 组 伪 终 端 , 每 个 会 话 都 有 一 个 或 多 个 与 其 关 联 的 窗 口 。 一 个 窗 口 占 据 整 个 屏 幕 , 可 以 分 成 多 个 矩 形 窗 格 , 每 个 窗 格 都 是 一 个 单 独 的 伪 终 端 ( 关 于 伪 终 端 的 技 术 细 节 可 以 参 考 pty(4) 手 册 页 面 ) 。 任 意 数 量 的 tmux 实 例 可 以 连 接 到 同 一 个 会 话 , 同 一 会 话 中 可 以 存 在 任 意 数 量 的 窗 口 。 当 所 有 会 话 都 被 关 闭 时 , tmux 退 出 。

每 个 会 话 都 是 持 久 的 , 即 使 发 生 意 外 断 开 ( 如 ssh(1) 连 接 超 时 ) 或 意 外 分 离 ( 使 用 ’C-b d’ 组 合 键 ) 也 会 保 留 。 可 以 使 用 以 下 命 令 重 新 连 接 tmux

$ tmux attach

tmux 在 屏 幕 上 由 客 户 端 显 示 , 所 有 会 话 由 单 个 服 务 器 管 理 。 服 务 器 和 每 个 客 户 端 都 是 独 立 的 进 程 , 它 们 通 过 /tmp 中 的 一 个 套 接 字 进 行 通 信 。

选 项 如 下 :

-2

强 制 tmux 假 定 终 端 支 持 256 种 颜 色 。 这 相 当 于 -T 256

-C

以 控 制 模 式 启 动 ( 请 参 阅 CONTROL MODE 章 节 ) 。 两 次 给 出 (

-CC) 可 以 禁 用 回 显 。

-c 外 壳 命 令

使 用 默 认 shell 执 行 shell-command 。 如 果 必 要 , tmux 服 务 器 会 启 动 以 检 索 default-shell 选 项 。 当 tmux 用 作 登 录 shell 时 , 此 选 项 用 于 与 sh(1) 兼 容 。

-D

不 要 将 tmux 服 务 器 作 为 守 护 进 程 启 动 。 这 也 会 关 闭 exit-empty 选 项 。 使 用 -D , 不 可 以 指 定 command

-f 文 件

指 定 替 代 配 置 文 件 。 默 认 情 况 下 , tmux@SYSCONFDIR@/tmux.conf 加 载 系 统 配 置 文 件 ( 如 果 存 在 ) , 然 后 在 ~/.tmux.conf$XDG_CONFIG_HOME/tmux/tmux.conf~/.config/tmux/tmux.conf 中 查 找 用 户 配 置 文 件 。

配 置 文 件 是 一 组 tmux 命 令 , 这 些 命 令 在 服 务 器 第 一 次 启 动 时 按 顺 序 执 行 。 tmux 在 服 务 器 进 程 启 动 时 加 载 配 置 文 件 。 可 以 使 用 source-file 命 令 在 后 面 加 载 文 件 。

tmux 会 在 创 建 的 第 一 个 会 话 中 显 示 来 自 配 置 文 件 中 命 令 的 任 何 错 误 消 息 , 并 继 续 处 理 配 置 文 件 的 其 余 部 分 。

-L 套 接 字 名 称

tmux 将 服 务 器 套 接 字 存 储 在 TMUX_TMPDIR 或 /tmp 下 的 目 录 中 ( 如 果 未 设 置 ) 。 默 认 套 接 字 名 称 为 default 。 此 选 项 允 许 指 定 不 同 的 套 接 字 名 称 , 从 而 允 许 运 行 多 个 独 立 的 tmux 服 务 器 。 与 -S 不 同 , 不 需 要 提 供 完 整 路 径 : 所 有 套 接 字 都 创 建 在 由 TMUX_TMPDIR 给 出 的 目 录 下 的 tmux-UID 目 录 中 , 或 者 在 /tmp 中 。 tmux 创 建 tmux-UID 目 录 , 并 且 不 能 将 其 设 置 为 全 局 可 读 、 可 写 或 可 执 行 。

如 果 套 接 字 被 意 外 删 除 , 可 以 向 tmux 服 务 器 进 程 发 送 SIGUSR1 信 号 以 重 新 创 建 它 ( 请 注 意 , 如 果 缺 少 任 何 父 目 录 , 则 此 操 作 将 失 败 ) 。

-l

表 现 为 登 录 shell。 目 前 此 标 志 没 有 实 际 效 果 , 只 是 为 了 与 其 他 shell 在 使 用 tmux 作 为 登 录 shell 时 兼 容 。

-N

即 使 命 令 通 常 会 启 动 服 务 器 ( 例 如 new-sessionstart-server ) , 也 不 要 启 动 服 务 器 。

-S 套 接 字 路 径

指 定 服 务 器 套 接 字 的 完 整 替 代 路 径 。 如 果 指 定 了 -S , 则 不 使 用 默 认 套 接 字 目 录 , 任 何 -L 标 志 都 将 被 忽 略 。

-u

即 使 设 置 的 第 一 个 LC_ALL 、 LC_CTYPE 或 LANG 环 境 变 量 不 包 含 "UTF-8" 或 "UTF8" , 也 将 UTF-8 输 出 写 入 终 端 。 这 相 当 于 -T UTF-8

-T 特 征

为 客 户 端 设 置 终 端 特 性 。 这 是 一 个 用 逗 号 分 隔 的 特 性 列 表 。 请 参 阅 terminal-features 选 项 。

-v

请 求 详 细 日 志 记 录 。 日 志 消 息 将 保 存 在 当 前 目 录 中 的 tmux-client-PID.logtmux-server-PID.log 文 件 中 , 其 中 PID 是 服 务 器 或 客 户 端 进 程 的 PID。 如 果 指 定 了 -v 两 次 , 则 会 生 成 另 一 个 名 为 tmux-out-PID.log 的 文 件 , 其 中 包 含 tmux 写 入 终 端 的 所 有 内 容 的 副 本 。

可 以 向 tmux 服 务 器 进 程 发 送 SIGUSR2 信 号 , 以 在 打 开 日 志 记 录 ( 如 同 给 出 -v ) 和 关 闭 日 志 记 录 之 间 切 换 。

-V

报 告 tmux 的 版 本 。

命 令 [符 号 ]

此 选 项 指 定 用 于 控 制 tmux 的 一 组 命 令 , 如 下 面 的 章 节 中 所 述 。 如 果 没 有 指 定 命 令 , 则 假 定 使 用 new-session 命 令 。

默 认 按 键 绑 定

可 以 使 用 前 缀 键 ( 默 认 为 ’C-b’ , 即 Ctrl-b) 加 上 一 个 命 令 键 来 控 制 tmux 。 通 过 一 个 已 连 接 的 客 户 端 可 以 实 现 这 种 控 制 。

默 认 的 命 令 键 绑 定 如 下 :

C-b

将 前 缀 键 ( C-b) 发 送 到 应 用 程 序 。

C-o

向 前 旋 转 当 前 窗 口 中 的 窗 格 。

C-z

挂 起 tmux 客 户 端 。

!

将 当 前 窗 格 从 窗 口 中 分 离 。

"

将 当 前 窗 格 分 为 上 下 两 部 分 。

#

列 出 所 有 剪 贴 板 。

$

重 命 名 当 前 会 话 。

%

将 当 前 窗 格 分 为 左 右 两 部 分 。

&

关 闭 当 前 窗 口 。

提 示 选 择 窗 口 索 引 。

(

将 所 附 加 的 客 户 端 切 换 到 前 一 个 会 话 。

)

将 所 附 加 的 客 户 端 切 换 到 下 一 个 会 话 。

,

重 命 名 当 前 窗 口 。

-

删 除 最 近 复 制 的 文 本 缓 冲 区 。

.

提 示 输 入 要 移 动 当 前 窗 口 的 索 引 。

0 到 9

选 择 窗 口 0 到 9。

:

进 入 tmux 命 令 提 示 符 。

;

移 动 到 先 前 活 动 的 窗 格 。

=

从 列 表 中 交 互 式 选 择 要 粘 贴 的 缓 冲 区 。

?

列 出 所 有 按 键 绑 定 。

D

选 择 要 分 离 的 客 户 端 。

L

将 所 附 加 的 客 户 端 切 换 回 上 一 个 会 话 。

[

进 入 复 制 模 式 以 复 制 文 本 或 查 看 历 史 记 录 。

]

粘 贴 最 近 复 制 的 文 本 缓 冲 区 。

c

创 建 一 个 新 窗 口 。

d

分 离 当 前 客 户 端 。

f

提 示 在 打 开 的 窗 口 中 搜 索 文 本 。

i

显 示 有 关 当 前 窗 口 的 一 些 信 息 。

l

移 动 到 先 前 选 择 的 窗 口 。

m

标 记 当 前 窗 格 ( 参 见 select-pane -m ) 。

M

清 除 标 记 的 窗 格 。

n

切 换 到 下 一 个 窗 口 。

o

在 当 前 窗 口 中 选 择 下 一 个 窗 格 。

p

切 换 到 上 一 个 窗 口 。

q

简 要 显 示 窗 格 索 引 。

r

强 制 重 绘 附 加 的 客 户 端 。

s

以 交 互 方 式 为 连 接 的 客 户 端 选 择 一 个 新 会 话 。

t

显 示 时 间 。

w

交 互 地 选 择 当 前 窗 口 。

x

关 闭 当 前 窗 格 。

z

切 换 当 前 窗 格 的 缩 放 状 态 。

{

将 当 前 窗 格 与 上 一 个 窗 格 交 换 。

}

将 当 前 窗 格 与 下 一 个 窗 格 交 换 。

~

如 果 有 的 话 , 显 示 tmux 的 以 前 消 息 。

Page Up

进 入 复 印 模 式 并 向 上 滚 动 一 页 。

Up, Down
Left, Right

切 换 到 当 前 窗 格 上 方 、 下 方 、 左 侧 或 右 侧 的 窗 格 。

M-1 到 M-5

将 窗 格 排 列 为 五 个 预 设 布 局 之 一 : even-horizontal、 even-vertical、 main-horizontal、 main-vertical 或 tiled。

Space

在 下 一 个 预 设 布 局 中 排 列 当 前 窗 口 。

M-n

使 用 铃 声 或 活 动 标 记 移 动 到 下 一 个 窗 口 。

M-o

向 后 旋 转 当 前 窗 口 中 的 窗 格 。

M-p

使 用 铃 声 或 活 动 标 记 移 动 到 上 一 个 窗 口 。

C-Up, C-Down
C-Left, C-Right

以 一 个 单 元 格 为 单 位 调 整 当 前 窗 格 的 大 小 。

M-Up, M-Down
M-Left, M-Right

以 五 个 单 元 格 为 步 长 调 整 当 前 窗 格 的 大 小 。

可 以 使 用 bind-keyunbind-key 命 令 更 改 键 绑 定 。

命 令 解 析 和 执 行

tmux 支 持 大 量 命 令 , 可 用 于 控 制 其 行 为 。 每 个 命 令 都 有 名 称 , 可 以 接 受 零 个 或 多 个 标 志 和 参 数 。 它 们 可 以 使 用 bind-key 命 令 绑 定 到 键 上 , 也 可 以 从 shell 提 示 符 、 shell 脚 本 、 配 置 文 件 或 命 令 提 示 符 中 运 行 。 例 如 , 从 shell 提 示 符 、 ~/.tmux.conf 和 绑 定 到 键 的 相 同 的 set-option 命 令 可 能 如 下 所 示 :

$ tmux set-option -g status-style bg=cyan

set-option -g status-style bg=cyan

bind-key C set-option -g status-style bg=cyan

这 里 , 命 令 名 称 是 ’set-option’ , ’-g’ 是 一 个 标 志 , ’status-style’ 和 ’bg=cyan’ 是 参 数 。

tmux 区 分 命 令 解 析 和 执 行 。 为 了 执 行 命 令 , tmux 需 要 将 其 拆 分 为 名 称 和 参 数 。 这 是 命 令 解 析 。 如 果 从 shell 中 运 行 命 令 , 则 shell 解 析 它 ; 如 果 从 tmux 内 部 或 配 置 文 件 中 运 行 , 则 tmux 解 析 它 。 tmux 解 析 命 令 的 示 例 包 括 :

-

在 配 置 文 件 中 ;

-

在 命 令 提 示 符 下 输 入 ( 参 见 command-prompt ) ;

-

给 予 bind-key

-

作 为 参 数 传 递 给 if-shellconfirm-before

为 了 执 行 命 令 , 每 个 客 户 端 都 有 一 个 ’命 令 队 列 ’ 。 在 启 动 时 , 未 附 加 到 任 何 客 户 端 的 全 局 命 令 队 列 用 于 像 ~/.tmux.conf 这 样 的 配 置 文 件 。 添 加 到 队 列 中 的 解 析 命 令 按 顺 序 执 行 。 某 些 命 令 ( 例 如 if-shellconfirm-before ) 会 解 析 其 参 数 以 创 建 一 个 新 命 令 , 该 命 令 立 即 插 入 到 它 们 之 后 。 这 意 味 着 参 数 可 能 会 被 解 析 两 次 或 更 多 次 ——一 次 是 在 解 析 其 父 命 令 ( 如 if-shell ) 时 , 再 次 是 在 解 析 并 执 行 其 命 令 时 。 命 令 , 例 如 if-shellrun-shelldisplay-panes , 会 停 止 队 列 中 后 续 命 令 的 执 行 , 直 到 发 生 某 些 事 情 —— if-shellrun-shell 直 到 外 壳 命 令 完 成 , display-panes 直 到 按 下 键 。 例 如 , 以 下 命 令 :

new-session; new-window
if-shell "true" "split-window"
kill-session

将 按 照 顺 序 执 行 new-sessionnew-windowif-shell 、 shell 命 令 true(1) 、 split-windowkill-session

命 令 部 分 列 出 了 tmux 命 令 及 其 参 数 。

解 析 语 法

本 节 描 述 由 tmux 解 析 的 命 令 的 语 法 , 例 如 在 配 置 文 件 或 命 令 提 示 符 中 。 请 注 意 , 当 命 令 输 入 到 shell 中 时 , 它 们 由 shell 解 析 ——例 如 参 见 ksh(1) 或 csh(1) 。

每 个 命 令 以 换 行 符 或 分 号 (;) 结 尾 。 由 分 号 分 隔 的 命 令 一 起 形 成 一 个 ’命 令 序 列 ’ ——如 果 序 列 中 的 一 个 命 令 遇 到 错 误 , 则 不 会 执 行 后 续 命 令 。

建 议 将 用 作 命 令 分 隔 符 的 分 号 写 成 单 独 的 标 记 , 例 如 从 sh(1) :

$ tmux neww \; splitw

或 :

$ tmux neww ’;’ splitw

或 者 从 tmux 命 令 提 示 符 :

neww ; splitw

然 而 , 尾 随 的 分 号 也 被 解 释 为 一 个 命 令 分 隔 符 。 例 如 , 在 这 些 sh(1) 命 令 中 :

$ tmux neww\; splitw

或 :

$ tmux ’neww;’ splitw

就 像 这 些 例 子 一 样 , 当 从 shell 运 行 tmux 时 , 必 须 特 别 小 心 地 引 用 分 号 :

1.

应 该 被 解 释 为 命 令 分 隔 符 的 分 号 应 该 根 据 shell 约 定 进 行 转 义 。 对 于 sh(1) , 这 通 常 意 味 着 使 用 引 号 引 用 (例 如 ’neww ’;’ splitw’) 或 者 转 义 (例 如 ’neww \\\\; splitw’) 。

2.

应 该 被 解 释 为 参 数 的 单 个 分 号 或 尾 随 分 号 应 该 进 行 两 次 转 义 : 一 次 根 据 shell 约 定 转 义 , 另 一 次 为 了 tmux 转 义 ; 例 如 :

$ tmux neww ’foo\\;’ bar
$ tmux neww foo\\\\; bar

3.

不 是 单 独 的 标 记 或 尾 随 另 一 个 标 记 的 分 号 应 该 根 据 shell 约 定 只 转 义 一 次 ; 例 如 :

$ tmux neww ’foo-;-bar’
$ tmux neww foo-\\;-bar

注 释 由 未 引 用 的 # 字 符 标 记 ——在 注 释 后 的 任 何 剩 余 文 本 都 会 被 忽 略 , 直 到 行 末 。

如 果 一 行 的 最 后 一 个 字 符 是 \, 则 该 行 与 下 一 行 连 接 ( \ 和 换 行 符 都 被 完 全 删 除 ) 。 这 被 称 为 行 连 续 , 适 用 于 引 用 字 符 串 内 外 和 注 释 内 , 但 不 适 用 于 花 括 号 内 部 。

命 令 参 数 可 以 被 指 定 为 被 单 引 号 ( ’) , 双 引 号 (") 或 者 花 括 号 ({}) 包 围 的 字 符 串 。 当 参 数 包 含 任 何 特 殊 字 符 时 , 这 是 必 需 的 。 单 引 号 和 双 引 号 的 字 符 串 不 能 跨 越 多 行 , 除 非 使 用 行 连 续 。 花 括 号 可 以 跨 越 多 行 。

在 引 号 之 外 和 双 引 号 之 内 , 执 行 以 下 替 换 :

-

由 $ 前 缀 的 环 境 变 量 将 被 替 换 为 它 们 在 全 局 环 境 中 的 值 ( 请 参 阅 全 局 和 会 话 环 境 部 分 ) 。

-

以 ~ 或 ~user 开 头 将 被 扩 展 为 当 前 或 指 定 用 户 的 主 目 录 。

-

\uXXXX 或 \uXXXXXXXX 将 被 替 换 为 与 给 定 的 四 位 或 八 位 十 六 进 制 数 对 应 的 Unicode 代 码 点 。

-

当 由 \ 前 缀 ( 转 义 ) 时 , 以 下 字 符 将 被 替 换 : \e 为 转 义 字 符 ; \r 为 回 车 符 ; \n 为 换 行 符 ; \t 为 制 表 符 。

-

\ooo 将 被 替 换 为 一 个 八 进 制 值 为 ooo 的 字 符 。 需 要 三 个 八 进 制 数 字 , 例 如 \001。 最 大 有 效 字 符 是 \377。

-

\ 后 面 的 任 何 其 他 字 符 都 将 被 替 换 为 它 们 自 己 ( 即 , \ 将 被 删 除 ) , 并 且 不 被 视 为 具 有 任 何 特 殊 含 义 ——因 此 例 如 \; 不 会 标 记 命 令 序 列 , \$ 不 会 展 开 环 境 变 量 。

花 括 号 被 解 释 为 配 置 文 件 ( 因 此 可 以 处 理 ’%if’ 等 条 件 ) , 然 后 转 换 为 字 符 串 。 它 们 旨 在 避 免 在 将 一 组 tmux 命 令 作 为 参 数 传 递 时 需 要 进 行 额 外 的 转 义 ( 例 如 传 递 给 if-shell ) 。 这 两 个 例 子 生 成 相 同 的 命 令 - 请 注 意 , 使 用 {} 时 不 需 要 进 行 任 何 转 义 :

if-shell true {
display -p ’brace-dollar-foo: }$foo’
}

if-shell true "display -p ’brace-dollar-foo: }\$foo’"

大 括 号 可 以 包 含 在 大 括 号 内 , 例 如 :

bind x if-shell "true" {
if-shell "true" {
display "true!"
}
}

可 以 使 用 语 法 ’name=value’ 来 设 置 环 境 变 量 , 例 如 ’HOME=/home/user’ 。 在 解 析 期 间 设 置 的 变 量 将 添 加 到 全 局 环 境 中 。 可 以 使 用 ’%hidden’ 设 置 隐 藏 变 量 , 例 如 :

%hidden MYVAR=42

隐 藏 变 量 不 会 传 递 给 由 tmux创 建 的 进 程 的 环 境 变 量 。 请 参 见 GLOBAL AND SESSION ENVIRONMENT 部 分 。

可 以 使 用 ’%if’ 、 ’%elif’ 、 ’%else’ 和 ’%endif’ 将 命 令 进 行 条 件 解 析 。 ’%if’ 和 ’%elif’ 的 参 数 会 被 扩 展 为 格 式 化 字 符 串 ( 参 见 FORMATS ) , 如 果 它 们 的 值 为 false( 零 或 空 ) , 那 么 后 续 的 文 本 将 被 忽 略 , 直 到 遇 到 ’%elif’ 、 ’%else’ 或 ’%endif’ 。 例 如 :

%if "#{==:#{host},myhost}"
set -g status-style bg=red
%elif "#{==:#{host},myotherhost}"
set -g status-style bg=green
%else
set -g status-style bg=blue
%endif

如 果 在 ’myhost’ 上 运 行 , 则 将 状 态 行 更 改 为 红 色 , 如 果 在 ’myotherhost’ 上 运 行 , 则 更 改 为 绿 色 , 如 果 在 另 一 个 主 机 上 运 行 , 则 更 改 为 蓝 色 。 条 件 语 句 可 以 写 在 一 行 上 , 例 如 :

%if #{==:#{host},myhost} set -g status-style bg=red %endif

命 令

本 节 介 绍 了 tmux 支 持 的 命 令 。 大 多 数 命 令 都 接 受 可 选 的 -t ( 有 时 还 有 -s ) 参 数 和 目 标 客 户 端目 标 会 话目 标 窗 口目 标 窗 格 之 一 。 这 些 指 定 了 命 令 要 影 响 的 客 户 端 、 会 话 、 窗 口 或 窗 格 。

本 节 介 绍 tmux 支 持 的 命 令 。 大 多 数 命 令 都 可 以 使 用 可 选 的 -t ( 有 时 还 有 -s ) 参 数 , 参 数 可 以 是 target-clienttarget-sessiontarget-windowtarget-pane , 用 于 指 定 命 令 应 该 影 响 哪 个 客 户 端 、 会 话 、 窗 口 或 窗 格 。

target-session 尝 试 的 顺 序 如 下 :

1.

以 $ 为 前 缀 的 会 话 代 号 。

2.

会 话 的 精 确 名 称 ( 由 list-sessions 命 令 列 出 ) 。

3.

会 话 名 称 的 开 头 , 例 如 ’mysess’ 可 以 匹 配 名 为 ’mysession’ 的 会 话 。

4.

与 会 话 名 称 匹 配 的 fnmatch(3) 模 式 。

如 果 会 话 名 称 以 ’=’ 开 头 , 则 只 接 受 精 确 匹 配 ( 因 此 ’=mysess’ 只 能 精 确 匹 配 ’mysess’ , 而 不 能 匹 配 ’mysession’ ) 。

如 果 找 到 一 个 会 话 , 则 将 其 用 作 目 标 会 话 ; 多 个 匹 配 会 产 生 错 误 。 如 果 省 略 会 话 , 则 使 用 当 前 可 用 的 会 话 ; 如 果 没 有 当 前 会 话 可 用 , 则 选 择 最 近 使 用 的 会 话 。

target-window ( 或 src-windowdst-window ) 指 定 一 个 窗 口 , 格 式 为 session:windowsession 的 规 则 与 target-session 的 规 则 相 同 , 并 且 按 以 下 顺 序 查 找 window

1.

一 个 特 殊 的 令 牌 , 如 下 所 列 。

2.

窗 口 索 引 , 例 如 ’mysession:1’ 是 会 话 ’mysession’ 中 的 第 一 个 窗 口 。

3.

窗 口 ID, 例 如 @1。

4.

一 个 精 确 的 窗 口 名 称 , 例 如 ’mysession:mywindow’ 。

5.

窗 口 名 称 的 开 头 , 例 如 ’mysession:mywin’ 。

6.

与 窗 口 名 称 匹 配 的 fnmatch(3) 模 式 。

与 会 话 类 似 , ’=’ 前 缀 只 进 行 精 确 匹 配 。 如 果 窗 口 名 称 为 空 , 则 如 果 适 用 , 指 定 下 一 个 未 使 用 的 索 引 ( 例 如 new-windowlink-window 命 令 ) ; 否 则 将 选 择 session 中 的 当 前 窗 口 。

以 下 特 殊 标 记 可 用 于 指 示 特 定 窗 口 。 每 个 标 记 都 有 一 个 单 字 符 的 替 代 形 式 。

标 记 Flag 含 义
{start} ^ 编 号 最 小 的 窗 口
{end} $ 编 号 最 大 的 窗 口
{last} ! 上 一 个 ( 之 前 的 当 前 ) 窗 口
{next} + 下 一 个 窗 口 的 编 号
{previous} - 上 一 个 窗 口 的 编 号

target-pane ( 或 src-panedst-pane ) 可 以 是 窗 格 ID, 也 可 以 采 用 与 target-window 类 似 的 形 式 , 但 是 可 以 选 择 在 窗 口 名 称 后 面 加 上 一 个 点 和 窗 格 索 引 或 窗 格 ID, 例 如 : ’mysession:mywindow.1’ 。 如 果 省 略 了 窗 格 索 引 , 则 使 用 指 定 窗 口 中 当 前 活 动 的 窗 格 。 以 下 是 用 于 窗 格 索 引 的 特 殊 标 记 :

标 记 Flag 含 义
{last} ! 最 后 一 个 ( 以 前 活 动 的 ) 窗 格
{next} + 下 一 个 窗 格 ( 按 编 号 )
{previous} - 上 一 个 窗 格 ( 按 编 号 )
{top} 顶 部 窗 格
{bottom} 底 部 窗 格
{left} 最 左 边 的 窗 格
{right} 最 右 边 的 窗 格
{top-left} 左 上 窗 格
{top-right} 右 上 窗 格
{bottom-left} 左 下 方 的 窗 格
{bottom-right} 右 下 窗 格
{up-of} 活 动 窗 格 上 方 的 窗 格
{down-of} 活 动 窗 格 下 方 的 窗 格
{left-of} 活 动 窗 格 左 侧 的 窗 格
{right-of} 活 动 窗 格 右 侧 的 窗 格

标 记 ’+’ 和 ’-’ 可 以 后 跟 一 个 偏 移 量 , 例 如 :

select-window -t:+2

此 外 , 目 标 会 话目 标 窗 口目 标 窗 格 可 以 完 全 由 标 记 ’{mouse}’ ( 另 一 种 形 式 为 ’=’ ) 组 成 , 以 指 定 最 近 鼠 标 事 件 发 生 的 会 话 、 窗 口 或 窗 格 ( 请 参 见 鼠 标 支 持 部 分 ) 或 者 由 标 记 ’{marked}’ ( 另 一 种 形 式 为 ’~’ ) 组 成 , 以 指 定 已 标 记 的 窗 格 ( 请 参 见 select-pane -m ) 。

会 话 、 窗 口 和 窗 格 都 有 一 个 唯 一 的 代 号 ; 会 话 代 号 前 缀 为 ’$’ , 窗 口 前 缀 为 ’@’ , 窗 格 前 缀 为 ’%’ 。 它 们 是 唯 一 的 , 并 在 tmux 服 务 器 中 的 会 话 、 窗 口 或 窗 格 的 生 命 周 期 内 保 持 不 变 。 窗 格 代 号 通 过 TMUX_PANE 环 境 变 量 传 递 给 窗 格 的 子 进 程 。 可 以 使 用 ’会 话 代 号 ’ 、 ’窗 口 代 号 ’ 或 ’窗 格 代 号 ’ 格 式 ( 请 参 见 格 式 部 分 ) 和 display-messagelist-sessionslist-windowslist-panes 命 令 显 示 ID。

外 壳 命 令 参 数 是 sh(1) 命 令 。 这 可 以 是 传 递 给 外 壳 的 单 个 参 数 , 例 如 :

new-window ’vi ~/.tmux.conf’

将 运 行 :

/bin/sh -c ’vi ~/.tmux.conf’

此 外 , new-windownew-sessionsplit-windowrespawn-windowrespawn-pane 命 令 允 许 将 外 壳 命 令 作 为 多 个 参 数 给 出 并 直 接 执 行 ( 不 需 要 ’sh -c’ ) 。 这 可 以 避 免 shell 引 号 问 题 。 例 如 :

$ tmux new-window vi ~/.tmux.conf

将 直 接 运 行 vi(1) 而 不 调 用 shell。

命 令 [参 数 ] 指 的 是 一 个 tmux 命 令 , 可 以 将 命 令 和 参 数 分 开 传 递 , 例 如 :

bind-key F1 set-option status off

或 在 .tmux.conf 中 作 为 单 个 字 符 串 参 数 传 递 , 例 如 :

bind-key F1 { set-option status off }

tmux 命 令 示 例 包 括 :

refresh-client -t/dev/ttyp2

rename-session -tfirst newname

set-option -wt:0 monitor-activity on

new-window ; split-window -d

bind-key R source-file ~/.tmux.conf \; \

display-message "source-file done"

或 者 从 sh(1) :

$ tmux kill-window -t :1

$ tmux new-window \; split-window -d

$ tmux new-session -d ’vi ~/.tmux.conf’ \; split-window -d \; attach

客 户 端 和 会 话

tmux 服 务 器 管 理 客 户 端 、 会 话 、 窗 口 和 窗 格 。 客 户 端 附 加 到 会 话 以 与 其 交 互 , 可 以 使 用 new-session 命 令 创 建 会 话 , 也 可 以 使 用 attach-session 命 令 在 稍 后 附 加 到 会 话 。 每 个 会 话 有 一 个 或 多 个 窗 口 链 接 到 其 中 。 窗 口 可 以 链 接 到 多 个 会 话 , 并 由 一 个 或 多 个 窗 格 组 成 , 每 个 窗 格 包 含 一 个 伪 终 端 。 创 建 、 链 接 和 其 他 操 作 窗 口 的 命 令 在 窗 口 和 窗 格 部 分 中 介 绍 。

以 下 命 令 可 用 于 管 理 客 户 端 和 会 话 :

attach-session [-dErx] [-c 工 作 目 录 ] [-f 符 号 ] [-t 目 标 会 话 ]

(别 名 : Ic attach)

如 果 在 tmux 之 外 运 行 , 则 在 当 前 终 端 中 创 建 一 个 新 客 户 端 并 将 其 附 加 到 目 标 会 话 。 如 果 从 内 部 使 用 , 则 切 换 当 前 客 户 端 。 如 果 指 定 了 -d , 则 会 将 连 接 到 该 会 话 的 任 何 其 他 客 户 端 断 开 连 接 。 如 果 给 出 了 -x , 则 会 将 客 户 端 分 离 并 向 其 父 进 程 发 送 SIGHUP 信 号 , 通 常 导 致 其 退 出 。 -f 设 置 一 个 逗 号 分 隔 的 客 户 端 标 志 列 表 。 这 些 标 志 包 括 :

active-pane

客 户 端 有 一 个 独 立 的 活 动 窗 格

ignore-size

客 户 端 不 影 响 其 他 客 户 端 的 大 小

no-output

客 户 端 在 控 制 模 式 下 不 接 收 窗 格 输 出

pause-after=seconds

在 控 制 模 式 下 , 一 旦 窗 格 落 后 于 seconds 秒 , 输 出 就 会 暂 停

read-only

客 户 端 是 只 读 的

wait-exit

在 退 出 控 制 模 式 之 前 等 待 空 行 输 入

如 果 客 户 端 已 经 附 加 , 则 前 导 的 ’!’ 关 闭 标 志 。 -r-f read-only,ignore-size 的 别 名 。 当 客 户 端 为 只 读 时 , 只 有 绑 定 到 detach-clientswitch-client 命 令 的 按 键 才 会 生 效 。 具 有 active-pane 标 志 的 客 户 端 允 许 独 立 选 择 活 动 窗 格 , 而 不 受 未 使 用 该 标 志 的 客 户 端 使 用 的 窗 口 活 动 面 板 的 影 响 。 这 仅 影 响 光 标 位 置 和 客 户 端 发 出 的 命 令 ; 其 他 功 能 ( 例 如 钩 子 和 样 式 ) 仍 然 使 用 窗 口 的 活 动 窗 格 。

如 果 没 有 启 动 服 务 器 , attach-session 将 尝 试 启 动 服 务 器 ; 这 将 失 败 , 除 非 在 配 置 文 件 中 创 建 了 会 话 。

attach-session目 标 会 话 规 则 略 有 调 整 : 如 果 tmux 需 要 选 择 最 近 使 用 的 会 话 , 则 它 将 优 先 选 择 最 近 使 用 的 未 附 加 会 话 。

-c 将 设 置 会 话 的 工 作 目 录 ( 用 于 新 窗 口 ) 为 工 作 目 录

如 果 使 用 了 -Eupdate-environment 选 项 将 不 会 生 效 。

detach-client [-aP] [-E 外 壳 命 令 ] [-s 目 标 会 话 ] [-t 目 标 客 户 端 ]

(别 名 : Ic detach)

分 离 当 前 绑 定 到 键 、 使 用 -t 指 定 的 客 户 端 或 者 所 有 当 前 连 接 到 -s 指 定 的 会 话 的 客 户 端 。 -a 选 项 会 杀 死 除 了 使 用 -t 指 定 的 客 户 端 之 外 的 所 有 客 户 端 。 如 果 指 定 了 -P , 会 向 客 户 端 的 父 进 程 发 送 SIGHUP 信 号 , 通 常 导 致 其 退 出 。 使 用 -E , 运 行 外 壳 命 令 来 替 换 客 户 端 。

has-session [-t target-session]

(别 名 : Ic has)

如 果 指 定 的 会 话 不 存 在 , 则 报 告 错 误 并 以 1 退 出 。 如 果 该 会 话 存 在 , 则 以 0 退 出 。

kill-server

杀 死 tmux 服 务 器 和 客 户 端 , 并 销 毁 所 有 会 话 。

kill-session [-aC] [-t 目 标 会 话 ]

销 毁 给 定 会 话 , 关 闭 与 之 关 联 的 所 有 窗 口 , 并 断 开 所 有 连 接 到 该 会 话 的 客 户 端 。 如 果 指 定 了 -a , 则 除 指 定 的 会 话 外 , 所 有 会 话 都 会 被 销 毁 。 -C 标 志 会 清 除 与 会 话 关 联 的 所 有 窗 口 中 的 提 示 ( 响 铃 、 活 动 或 静 音 ) 。

list-clients [-F 格 式 ] [-t 目 标 会 话 ]

(别 名 : Ic lsc)

列 出 所 有 连 接 到 服 务 器 的 客 户 端 。 有 关 -F 标 志 的 含 义 , 请 参 见 格 式 部 分 。 如 果 指 定 了 目 标 会 话 , 则 仅 列 出 连 接 到 该 会 话 的 客 户 端 。

list-commands [-F 格 式 ] [命 令 ]

(别 名 : Ic lscm)

列 出 命 令 的 语 法 , 如 果 省 略 , 则 列 出 tmux 支 持 的 所 有 命 令 的 语 法 。

list-sessions [-F 格 式 ] [-f 过 滤 器 ]

(别 名 : Ic ls)

列 出 服 务 器 管 理 的 所 有 会 话 。 -F 指 定 每 行 的 格 式 , -f 指 定 一 个 过 滤 器 。 仅 显 示 过 滤 器 为 真 的 会 话 。 有 关 详 细 信 息 , 请 参 见 格 式 部 分 。

lock-client [-t 目 标 客 户 端 ]

(别 名 : Ic lockc)

锁 定 target-client , 请 参 见 lock-server 命 令 。

lock-session [-t 目 标 会 话 ]

(别 名 : Ic locks)

锁 定 连 接 到 目 标 会 话 的 所 有 客 户 端 。

new-session [-AdDEPX] [-c 起 始 目 录 ] [-e 环 境 ] [-f 符 号 ] [-F 格 式 ] [-n 窗 口 名 称 ] [-s 会 话 名 称 ] [-t 组 名 ] [-x 宽 度 ] [-y 高 度 ] [外 壳 命 令 ]

(别 名 : Ic new)

创 建 一 个 名 为 会 话 名 称 的 新 会 话 。

除 非 指 定 了 -d , 否 则 新 会 话 将 连 接 到 当 前 终 端 。 窗 口 名 称外 壳 命 令 分 别 是 初 始 窗 口 的 名 称 和 要 执 行 的 shell 命 令 。 使 用 -d , 初 始 大 小 来 自 全 局 的 default-size 选 项 ; -x-y 可 用 于 指 定 不 同 的 大 小 。 ’-’ 使 用 当 前 客 户 端 ( 如 果 有 ) 的 大 小 。 如 果 给 出 了 -x-y , 则 会 为 该 会 话 设 置 default-size 选 项 。 -f 设 置 一 个 逗 号 分 隔 的 客 户 端 标 志 列 表 ( 参 见 attach-session ) 。

如 果 从 终 端 运 行 , 则 会 保 存 并 在 新 会 话 的 新 窗 口 中 使 用 任 何 termios(4) 特 殊 字 符 。

如 果 会 话 名 称 已 经 存 在 , 则 -A 标 志 使 new-session 的 行 为 类 似 于 attach-session ; 在 这 种 情 况 下 , -D 的 行 为 类 似 于 attach-session-d-X 的 行 为 类 似 于 attach-session-x

如 果 给 定 了 -t , 则 它 指 定 了 一 个 会 话 组 。 同 一 组 中 的 会 话 共 享 相 同 的 窗 口 集 - 新 窗 口 链 接 到 组 中 的 所 有 会 话 , 并 从 所 有 会 话 中 删 除 任 何 关 闭 的 窗 口 。 当 前 和 前 一 个 窗 口 以 及 任 何 会 话 选 项 保 持 独 立 , 组 中 的 任 何 会 话 都 可 以 被 杀 死 而 不 影 响 其 他 会 话 。 组 名 参 数 可 以 是 以 下 内 容 之 一 :

1.

现 有 组 的 名 称 , 此 时 新 会 话 将 添 加 到 该 组 中 ;

2.

现 有 会 话 的 名 称 - 新 会 话 将 添 加 到 与 该 会 话 相 同 的 组 中 , 必 要 时 创 建 新 组 ;

3.

仅 包 含 新 会 话 的 新 组 的 名 称 。

-t 如 果 被 使 用 , -n外 壳 命 令 是 无 效 的 。

-P 选 项 在 创 建 新 会 话 后 打 印 有 关 该 会 话 的 信 息 。 默 认 情 况 下 , 它 使 用 格 式 ’#{session_name}:’ , 但 可 以 使 用 -F 指 定 不 同 的 格 式 。

如 果 使 用 -E , 则 不 会 应 用 update-environment 选 项 。 -e 的 形 式 为 ’VARIABLE=value’ , 用 于 为 新 创 建 的 会 话 设 置 环 境 变 量 ; 可 以 多 次 指 定 。

refresh-client [-cDLRSU] [-A 窗 格 :状 态 ] [-B 名 称 :什 么 :格 式 ] [-C 尺 寸 ] [-f 符 号 ] [-l [目 标 窗 格 ]] [-t 目 标 客 户 端 ] [adjustment]

(别 名 : Ic refresh)

如 果 绑 定 到 键 , 则 刷 新 当 前 客 户 端 ; 如 果 使 用 -t 指 定 了 一 个 客 户 端 , 则 刷 新 单 个 客 户 端 。 如 果 指 定 了 -S , 则 只 更 新 客 户 端 的 状 态 栏 。

-U-D-L-R-c 标 志 允 许 更 改 大 于 客 户 端 的 窗 口 的 可 见 部 分 。 -U 将 可 见 部 分 向 上 移 动 adjustment 行 , -D 向 下 移 动 , -L 将 其 向 左 移 动 adjustment 列 , -R 向 右 移 动 。 -c 返 回 自 动 跟 踪 光 标 。 如 果 省 略 adjustment , 则 使 用 1。 请 注 意 , 可 见 位 置 是 客 户 端 的 属 性 , 而 不 是 窗 口 的 属 性 , 在 连 接 的 会 话 中 更 改 当 前 窗 口 将 重 置 它 。

-C 设 置 控 制 模 式 客 户 端 的 宽 度 和 高 度 , 或 者 设 置 控 制 模 式 客 户 端 窗 口 的 宽 度 和 高 度 。 尺 寸 必 须 是 ’宽 度 x高 度 ’ 或 ’窗 口 代 号 :宽 度 x高 度 ’ 之 一 , 例 如 ’80x24’ 或 ’@0:80x24’ 。 -A 允 许 控 制 模 式 客 户 端 触 发 对 窗 格 的 操 作 。 参 数 是 窗 格 ID( 带 前 导 ’%’ ) , 一 个 冒 号 , 然 后 是 ’on’ 、 ’off’ 、 ’continue’ 或 ’pause’ 中 的 一 个 。 如 果 是 ’off’ , 则 tmux 不 会 将 窗 格 的 输 出 发 送 到 客 户 端 , 如 果 所 有 客 户 端 都 将 窗 格 关 闭 , 则 停 止 从 窗 格 读 取 。 如 果 是 ’continue’ , 则 如 果 窗 格 已 暂 停 ( 手 动 或 使 用 pause-after 标 志 ) , tmux 将 返 回 将 输 出 发 送 到 窗 格 。 如 果 是 ’pause’ , tmux 将 暂 停 窗 格 。 -A 可 以 针 对 不 同 的 窗 格 多 次 使 用 。

-B 设 置 控 制 模 式 客 户 端 的 格 式 订 阅 。 参 数 由 冒 号 分 成 三 个 项 目 : name 是 订 阅 的 名 称 ; what 是 要 订 阅 的 项 目 类 型 ; format 是 格 式 。 添 加 订 阅 后 , 格 式 更 改 会 使 用 %subscription-changed 通 知 报 告 , 最 多 每 秒 一 次 。 如 果 只 提 供 名 称 , 则 取 消 订 阅 。 what 可 以 为 空 , 仅 检 查 已 连 接 会 话 的 格 式 , 或 者 为 以 下 之 一 : 窗 格 ID( 如 ’%0’ ) ; 所 有 连 接 会 话 中 的 所 有 窗 格 , 例 如 ’%’ ; 窗 口 ID( 如 ’@0’ ) ; 或 所 有 连 接 会 话 中 的 所 有 窗 口 , 例 如 ’@’ 。

-f 设 置 逗 号 分 隔 的 客 户 端 标 志 列 表 , 参 见 attach-session

-l 使 用 xterm(1) 转 义 序 列 从 客 户 端 请 求 剪 贴 板 。 如 果 给 定 了 Ar target-pane, 则 剪 贴 板 将 被 发 送 ( 以 编 码 形 式 ) , 否 则 它 将 被 存 储 在 新 的 粘 贴 缓 冲 区 中 。

-L-R-U-D 将 窗 口 的 可 见 部 分 向 左 、 向 右 、 向 上 或 向 下 移 动 adjustment , 如 果 窗 口 大 于 客 户 端 的 大 小 。 -c 重 置 , 以 便 位 置 跟 随 光 标 。 请 参 见 window-size 选 项 。

rename-session [-t 目 标 会 话 ] 新 名 称

(别 名 : Ic rename)

将 会 话 重 命 名 为 新 名 称 .

server-access [-adlrw] [user]

更 改 user 的 访 问 或 读 写 权 限 。 运 行 tmux 服 务 器 的 用 户 ( 其 所 有 者 ) 和 root 用 户 无 法 更 改 , 并 且 始 终 被 允 许 访 问 。

-a-d 用 于 授 予 或 撤 销 指 定 用 户 的 访 问 权 限 。 如 果 用 户 已 连 接 , -d 标 志 会 导 致 其 客 户 端 被 分 离 。

-r-w 更 改 user 的 权 限 : -r 使 其 客 户 端 只 读 , 而 -w 使 其 可 写 。 -l 列 出 当 前 的 访 问 权 限 。

默 认 情 况 下 , 访 问 列 表 为 空 , tmux 使 用 文 件 系 统 权 限 创 建 套 接 字 , 防 止 任 何 用 户 ( 除 了 所 有 者 和 root) 访 问 。 这 些 权 限 必 须 手 动 更 改 。 不 应 该 允 许 不 受 信 任 的 用 户 访 问 , 即 使 是 只 读 访 问 也 应 该 格 外 小 心 。

show-messages [-JT] [-t 目 标 客 户 端 ]

(别 名 : Ic showmsgs)

显 示 服 务 器 消 息 或 信 息 。 消 息 会 被 存 储 , 最 多 存 储 数 量 由 消 息 限 制 服 务 器 选 项 设 置 的 限 制 。 -J-T 显 示 有 关 作 业 和 终 端 的 调 试 信 息 。

source-file [-Fnqv] 路 径 ...

(别 名 : Ic source)

从 由 路 径 ( 可 以 是 glob(7) 模 式 ) 指 定 的 一 个 或 多 个 文 件 中 执 行 命 令 。 如 果 存 在 -F , 则 路 径 会 被 展 开 为 格 式 。 如 果 给 定 了 -q , 则 如 果 路 径 不 存 在 , 不 会 返 回 错 误 。 使 用 -n , 可 以 解 析 文 件 , 但 不 会 执 行 任 何 命 令 。 如 果 可 能 , -v 显 示 解 析 的 命 令 和 行 号 。

start-server

(别 名 : Ic start)

如 果 尚 未 运 行 , 则 启 动 tmux 服 务 器 , 但 不 创 建 任 何 会 话 。

请 注 意 , 默 认 情 况 下 , tmux 服 务 器 将 以 没 有 会 话 的 方 式 退 出 , 因 此 仅 当 在 ~/.tmux.conf 中 创 建 会 话 、 关 闭 exit-empty 或 作 为 同 一 命 令 序 列 的 一 部 分 运 行 另 一 个 命 令 时 , 此 选 项 才 有 用 。 例 如 :

$ tmux start \; show -g

suspend-client [-t 目 标 客 户 端 ]

(别 名 : Ic suspendc)

通 过 发 送 SIGTSTP ( 终 端 停 止 ) 来 挂 起 客 户 端 。

switch-client [-ElnprZ] [-c 目 标 客 户 端 ] [-t 目 标 会 话 ] [-T 快 捷 键 表 ]

(别 名 : Ic switchc)

将 客 户 端 目 标 客 户 端 的 当 前 会 话 切 换 到 目 标 会 话 。 作 为 一 种 特 殊 情 况 , -t 可 能 会 引 用 一 个 窗 格 ( 包 含 ’:’ 、 ’.’ 或 ’%’) , 以 更 改 会 话 、 窗 口 和 窗 格 。 在 这 种 情 况 下 , 如 果 窗 口 已 经 被 放 大 , -Z 将 保 持 窗 口 放 大 。 如 果 使 用 了 -l-n-p , 则 将 客 户 端 分 别 移 动 到 最 后 、 下 一 个 或 上 一 个 会 话 。 -r 切 换 客 户 端 的 只 读ignore-size 标 志 ( 请 参 见 attach-session 命 令 ) 。

如 果 使 用 了 -E , 则 update-environment 选 项 将 不 会 应 用 。

-T 设 置 客 户 端 的 键 表 ; 下 一 个 键 将 从 快 捷 键 表 解 释 。 这 可 用 于 配 置 多 个 前 缀 键 , 或 将 命 令 绑 定 到 键 序 列 。 例 如 , 要 使 键 入 ’abc’ 运 行 list-keys 命 令 :

bind-key -Ttable2 c list-keys
bind-key -Ttable1 b switch-client -Ttable2
bind-key -Troot a switch-client -Ttable1

窗 口 和 窗 格

tmux 显 示 的 每 个 窗 口 都 可 以 分 成 一 个 或 多 个 窗 格 ; 每 个 窗 格 占 据 显 示 区 域 的 一 定 部 分 , 是 一 个 独 立 的 终 端 。 可 以 使 用 split-window 命 令 将 窗 口 分 成 窗 格 。 可 以 水 平 ( 使 用 -h 标 志 ) 或 垂 直 地 分 割 窗 口 。 可 以 使 用 resize-pane 命 令 ( 默 认 情 况 下 绑 定 到 ’C-Up’ 、 ’C-Down’ 、 ’C-Left’ 和 ’C-Right’ ) 来 调 整 窗 格 的 大 小 , 可 以 使 用 select-pane 命 令 更 改 当 前 窗 格 , 并 可 以 使 用 rotate-windowswap-pane 命 令 交 换 窗 格 而 不 改 变 其 位 置 。 窗 格 按 它 们 创 建 的 顺 序 从 零 开 始 编 号 。

默 认 情 况 下 , tmux 窗 格 允 许 直 接 访 问 包 含 在 窗 格 中 的 终 端 。 窗 格 也 可 以 被 放 入 多 种 模 式 之 一 :

-

复 制 模 式 , 允 许 将 窗 口 的 一 部 分 或 历 史 记 录 复 制 到 粘 贴 缓 冲 区 中 , 以 便 稍 后 插 入 到 另 一 个 窗 口 中 。 使 用 copy-mode 命 令 ( 默 认 绑 定 到 ’[’ ) 进 入 此 模 式 。 可 以 使 用 paste-buffer 命 令 ( 绑 定 到 ’]’ ) 将 复 制 的 文 本 粘 贴 。

-

查 看 模 式 , 类 似 于 复 制 模 式 , 但 在 从 键 绑 定 执 行 产 生 输 出 的 命 令 ( 例 如 list-keys ) 时 进 入 此 模 式 。

-

选 择 模 式 , 允 许 从 列 表 中 选 择 一 个 项 目 。 这 可 以 是 客 户 端 、 会 话 或 窗 口 或 窗 格 , 也 可 以 是 缓 冲 区 。 使 用 choose-bufferchoose-clientchoose-tree 命 令 进 入 此 模 式 。

在 复 制 模 式 下 , 窗 格 右 上 角 会 显 示 当 前 位 置 和 历 史 记 录 中 行 数 的 指 示 器 。

使 用 -X 标 志 将 命 令 发 送 到 复 制 模 式 的 send-keys 命 令 。 按 下 键 时 , 复 制 模 式 会 自 动 使 用 两 个 键 表 中 的 一 个 , 具 体 取 决 于 mode-keys 选 项 : 对 于 Emacs, 使 用 copy-mode , 对 于 vi 使 用 copy-mode-vi 。 可 以 使 用 list-keys 命 令 查 看 键 表 。

复 制 模 式 支 持 以 下 命 令 :

命 令 vi emacs
append-selection
append-selection-and-cancel A
back-to-indentation ^ M-m
begin-selection Space C-Space
bottom-line L
cancel q Escape
clear-selection Escape C-g
copy-end-of-line [<prefix>]
copy-end-of-line-and-cancel [<prefix>]
copy-pipe-end-of-line [<command>] [<prefix>]
copy-pipe-end-of-line-and-cancel [<command>] [<prefix>] D C-k
copy-line [<prefix>]
copy-line-and-cancel [<prefix>]
copy-pipe-line [<command>] [<prefix>]
copy-pipe-line-and-cancel [<command>] [<prefix>]
copy-pipe [<command>] [<prefix>]
copy-pipe-no-clear [<command>] [<prefix>]
copy-pipe-and-cancel [<command>] [<prefix>]
copy-selection [<prefix>]
copy-selection-no-clear [<prefix>]
copy-selection-and-cancel [<prefix>] Enter M-w
cursor-down j Down
cursor-down-and-cancel
cursor-left h Left
cursor-right l Right
cursor-up k Up
end-of-line $ C-e
goto-line <line> : g
halfpage-down C-d M-Down
halfpage-down-and-cancel
halfpage-up C-u M-Up
history-bottom G M->
history-top g M-<
jump-again ; ;
jump-backward <to> F F
jump-forward <to> f f
jump-reverse , ,
jump-to-backward <to> T
jump-to-forward <to> t
jump-to-mark M-x M-x
middle-line M M-r
next-matching-bracket % M-C-f
next-paragraph } M-}
next-space W
next-space-end E
next-word w
next-word-end e M-f
other-end o
page-down C-f PageDown
page-down-and-cancel
page-up C-b PageUp
pipe [<command>] [<prefix>]
pipe-no-clear [<command>] [<prefix>]
pipe-and-cancel [<command>] [<prefix>]
previous-matching-bracket M-C-b
previous-paragraph { M-{
previous-space B
previous-word b M-b
rectangle-on
rectangle-off
rectangle-toggle v R
refresh-from-pane r r
scroll-down C-e C-Down
scroll-down-and-cancel
scroll-up C-y C-Up
search-again n n
search-backward <for> ?
search-backward-incremental <for> C-r
search-backward-text <for>
search-forward <for> /
search-forward-incremental <for> C-s
search-forward-text <for>
search-reverse N N
select-line V
select-word
set-mark X X
start-of-line 0 C-a
stop-selection
toggle-position P P
top-line H M-R

搜 索 命 令 有 几 个 不 同 的 变 体 : ’search-forward’ 和 ’search-backward’ 搜 索 正 则 表 达 式 ; ’-text’ 变 体 搜 索 普 通 文 本 字 符 串 而 不 是 正 则 表 达 式 ; ’-incremental’ 执 行 增 量 搜 索 , 并 带 有 -i 标 志 用 于 command-prompt 命 令 。 ’search-again’ 重 复 上 次 搜 索 , 而 ’search-reverse’ 则 相 同 , 但 反 转 方 向 ( 向 前 变 为 向 后 , 向 后 变 为 向 前 ) 。

复 制 命 令 可 能 带 有 一 个 可 选 的 缓 冲 区 前 缀 参 数 , 用 于 生 成 缓 冲 区 名 称 ( 默 认 为 ’buffer’ , 因 此 缓 冲 区 的 名 称 为 ’buffer0’ 、 ’buffer1’ 等 ) 。 管 道 命 令 带 有 一 个 命 令 参 数 , 该 参 数 是 选 定 文 本 要 输 送 到 的 命 令 。 ’copy-pipe’ 变 体 还 会 复 制 所 选 内 容 。 某 些 命 令 的 ’-and-cancel’ 变 体 在 完 成 后 ( 对 于 复 制 命 令 ) 或 光 标 到 达 底 部 ( 对 于 滚 动 命 令 ) 后 退 出 复 制 模 式 。 ’-no-clear’ 变 体 不 清 除 所 选 内 容 。

下 一 个 和 前 一 个 单 词 键 跳 过 空 格 , 并 将 连 续 的 单 词 分 隔 符 或 其 他 字 母 序 列 视 为 单 词 。 可 以 使 用 word-separators 会 话 选 项 自 定 义 单 词 分 隔 符 。 下 一 个 单 词 移 动 到 下 一 个 单 词 的 开 头 , 下 一 个 单 词 结 束 移 动 到 下 一 个 单 词 的 结 尾 , 而 前 一 个 单 词 移 动 到 前 一 个 单 词 的 开 头 。 三 个 下 一 个 和 前 一 个 空 格 键 的 工 作 方 式 类 似 , 但 仅 使 用 空 格 作 为 单 词 分 隔 符 。 将 word-separators 设 置 为 空 字 符 串 将 使 下 一 个 /前 一 个 单 词 等 同 于 下 一 个 /前 一 个 空 格 。

跳 转 命 令 可 以 快 速 移 动 到 行 内 。 例 如 , 键 入 ’f’ , 然 后 跟 随 ’/’ , 将 光 标 移 动 到 当 前 行 上 的 下 一 个 ’/’ 字 符 。 然 后 , 使 用 ’;’ 可 以 跳 转 到 下 一 个 匹 配 项 。

在 复 制 模 式 下 的 命 令 可 以 在 前 面 加 上 可 选 的 重 复 计 数 。 使 用 vi 键 绑 定 时 , 前 缀 使 用 数 字 键 输 入 ; 使 用 emacs 键 绑 定 时 , Alt( meta) 键 和 数 字 开 始 输 入 前 缀 。

copy-mode 命 令 的 概 要 为 :

copy-mode [-eHMqu] [-s src-pane] [-t target-pane]

进 入 复 制 模 式 。 -u 选 项 向 上 滚 动 一 页 。 -M 开 始 鼠 标 拖 动 ( 仅 在 绑 定 到 鼠 标 键 绑 定 时 有 效 , 请 参 阅 MOUSE SUPPORT ) 。 -H 隐 藏 右 上 角 的 位 置 指 示 器 。 -q 取 消 复 制 模 式 和 任 何 其 他 模 式 。 -ssrc-pane 而 不 是 从 target-pane 复 制 。

-e 指 定 滚 动 到 历 史 记 录 底 部 ( 到 可 见 屏 幕 ) 应 退 出 复 制 模 式 。 在 复 制 模 式 下 , 按 下 用 于 滚 动 以 外 的 键 将 禁 用 此 行 为 。 这 旨 在 允 许 快 速 滚 动 窗 格 的 历 史 记 录 , 例 如 :

bind PageUp copy-mode -eu

有 许 多 预 设 的 窗 格 排 列 方 案 可 用 , 称 为 布 局 。 可 以 使 用 select-layout 命 令 选 择 这 些 布 局 , 也 可 以 使 用 next-layout ( 默 认 绑 定 到 ’Space’ ) 进 行 循 环 ; 选 择 布 局 后 , 其 中 的 窗 格 可 以 像 平 常 一 样 移 动 和 调 整 大 小 。

支 持 以 下 布 局 :

even-horizontal

窗 格 在 窗 口 上 从 左 到 右 均 匀 分 布 。

even-vertical

窗 格 从 上 到 下 均 匀 分 布 。

main-horizontal

一 个 大 的 ( 主 要 ) 窗 格 显 示 在 窗 口 顶 部 , 其 余 的 窗 格 从 左 到 右 分 布 在 底 部 的 剩 余 空 间 中 。 使 用 main-pane-height 窗 口 选 项 指 定 顶 部 窗 格 的 高 度 。

main-vertical

类 似 于 main-horizontal , 但 大 窗 格 放 置 在 左 侧 , 其 余 窗 格 从 上 到 下 沿 右 侧 分 布 。 请 参 阅 main-pane-width 窗 口 选 项 。

tiled

窗 格 尽 可 能 均 匀 地 分 布 在 窗 口 的 行 和 列 中 。

此 外 , select-layout 可 用 于 应 用 先 前 使 用 的 布 局 - list-windows 命 令 以 适 合 与 select-layout 使 用 的 形 式 显 示 每 个 窗 口 的 布 局 。 例 如 :

$ tmux list-windows
0: ksh [159x48]
layout: bb62,159x48,0,0{79x48,0,0,79x48,80,0}
$ tmux select-layout ’bb62,159x48,0,0{79x48,0,0,79x48,80,0}’

tmux 自 动 调 整 当 前 窗 口 大 小 的 布 局 大 小 。 请 注 意 , 不 能 将 布 局 应 用 于 窗 口 中 的 窗 格 数 量 超 过 原 始 定 义 布 局 的 窗 口 。

与 窗 口 和 窗 格 相 关 的 命 令 如 下 :

break-pane [-abdP] [-F 格 式 ] [-n 窗 口 名 称 ] [-s 源 窗 格 ] [-t 目 标 窗 口 ]

(别 名 : Ic breakp)

源 窗 格 从 其 所 在 的 窗 口 中 分 离 出 来 , 使 其 成 为 目 标 窗 口 中 唯 一 的 窗 格 。 使 用 -a-b , 窗 口 将 移 动 到 当 前 索 引 的 下 一 个 或 前 一 个 位 置 ( 必 要 时 移 动 现 有 窗 口 ) 。 如 果 给 出 -d , 新 窗 口 不 会 成 为 当 前 窗 口 。 -P 选 项 在 创 建 新 窗 口 后 打 印 有 关 新 窗 口 的 信 息 。 默 认 情 况 下 , 它 使 用 格 式 ’#{session_name}:#{window_index}.#{pane_index}’ , 但 可 以 使 用 -F 指 定 不 同 的 格 式 。

capture-pane [-aAepPqCJN] [-b 缓 冲 区 名 称 ] [-E 结 束 行 ] [-S 起 始 行 ] [-t 目 标 窗 格 ]

(别 名 : Ic capturep)

捕 获 窗 格 的 内 容 。 如 果 给 出 -p , 则 输 出 将 发 送 到 标 准 输 出 , 否 则 将 发 送 到 使 用 -b 指 定 的 缓 冲 区 , 如 果 省 略 则 发 送 到 新 缓 冲 区 。 如 果 给 出 -a , 则 使 用 备 用 屏 幕 , 历 史 记 录 不 可 访 问 。 如 果 不 存 在 备 用 屏 幕 , 则 会 返 回 错 误 , 除 非 给 出 -q 。 如 果 给 出 -e , 则 输 出 包 括 文 本 和 背 景 属 性 的 转 义 序 列 。 -C 还 将 非 可 打 印 字 符 转 义 为 八 进 制 \xxx。 -N 保 留 每 行 末 尾 的 尾 随 空 格 , -J 保 留 尾 随 空 格 并 连 接 任 何 换 行 的 行 。 -P 仅 捕 获 窗 格 已 接 收 但 尚 未 完 整 的 转 义 序 列 开 头 的 任 何 输 出 。

-S-E 指 定 起 始 和 结 束 行 号 , 0 是 可 见 窗 格 的 第 一 行 , 负 数 是 历 史 记 录 中 的 行 。 ’-’ 到 -S 是 历 史 记 录 的 开 头 , 到 -E 是 可 见 窗 格 的 末 尾 。 默 认 情 况 下 , 仅 捕 获 窗 格 的 可 见 内 容 。

choose-client [-NrZ] [-F 格 式 ] [-f 过 滤 器 ] [-K 快 捷 键 格 式 ] [-O 排 序 ] [-t 目 标 窗 格 ] [模 板 ]

将 窗 格 置 于 客 户 端 模 式 , 允 许 从 列 表 中 交 互 式 地 选 择 客 户 端 。 每 个 客 户 端 显 示 在 一 行 上 。 快 捷 键 显 示 在 左 侧 的 括 号 中 , 允 许 进 行 立 即 选 择 , 或 者 可 以 使 用 下 面 的 键 导 航 列 表 并 选 择 或 以 其 他 方 式 操 作 项 目 。 -Z 缩 放 窗 格 。 可 以 在 客 户 端 模 式 下 使 用 以 下 键 :

快 捷 键

功 能

Enter

选 择 选 定 的 客 户 端

Up

选 择 以 前 的 客 户 端

Down

选 择 下 一 个 客 户 端

C-s

按 名 称 搜 索

n

重 复 上 次 搜 索

t

如 果 客 户 端 被 标 记 则 切 换

T

标 记 没 有 客 户 端

C-t

标 记 所 有 客 户 端

d

分 离 选 定 的 客 户 端

D

分 离 标 记 的 客 户 端

x

分 离 并 HUP 选 定 的 客 户 端

X

分 离 和 HUP 标 记 的 客 户 端

z

暂 停 选 定 的 客 户 端

Z

暂 停 标 记 的 客 户 端

f

输 入 过 滤 项 目 的 格 式

O

更 改 排 序 字 段

r

反 向 排 序

v

切 换 预 览

q

退 出 模 式

选 择 客 户 端 后 , ’%%’ 在 template 中 被 客 户 端 名 称 替 换 , 并 将 结 果 执 行 为 命 令 。 如 果 未 给 出 template , 则 使 用 "detach-client -t ’%%’"。

-O 指 定 初 始 排 序 字 段 : 为 ’name’ 、 ’size’ 、 ’creation’ 或 ’activity’ 中 的 一 个 。 -r 反 转 排 序 顺 序 。 -f 指 定 初 始 过 滤 器 : 过 滤 器 是 一 个 格 式 - 如 果 它 评 估 为 零 , 则 不 显 示 列 表 中 的 项 目 , 否 则 显 示 它 。 如 果 过 滤 器 会 导 致 空 列 表 , 则 它 将 被 忽 略 。 -F 指 定 列 表 中 每 个 项 目 的 格 式 , -K 指 定 每 个 快 捷 键 的 格 式 ; 两 者 都 会 为 每 行 评 估 一 次 。 -N 在 没 有 预 览 的 情 况 下 启 动 。 仅 当 至 少 有 一 个 客 户 端 附 加 时 , 此 命 令 才 有 效 。

choose-tree [-GNrswZ] [-F format] [-f filter] [-K key-format] [-O sort-order] [-t target-pane] [template]

将 窗 格 置 于 树 模 式 , 允 许 从 树 中 交 互 式 地 选 择 会 话 、 窗 口 或 窗 格 。 每 个 会 话 、 窗 口 或 窗 格 显 示 在 一 行 上 。 快 捷 键 显 示 在 左 侧 的 括 号 中 , 允 许 进 行 立 即 选 择 , 或 者 可 以 使 用 下 面 的 键 导 航 树 并 选 择 或 以 其 他 方 式 操 作 项 目 。 -s 以 会 话 折 叠 开 始 , -w 以 窗 口 折 叠 开 始 。 -Z 缩 放 窗 格 。 可 以 在 树 模 式 下 使 用 以 下 键 :

快 捷 键

功 能

Enter

选 择 所 选 项 目

Up

选 择 上 一 项

Down

选 择 下 一 项

+

展 开 所 选 项 目

-

折 叠 所 选 项 目

M-+

展 开 所 有 项 目

M--

折 叠 所 有 项 目

x

杀 死 选 定 的 项 目

X

杀 死 标 记 的 物 品

<

向 左 滚 动 预 览 列 表

>

向 右 滚 动 预 览 列 表

C-s

按 名 称 搜 索

m

设 置 标 记 窗 格

M

清 除 标 记 的 窗 格

n

重 复 上 次 搜 索

t

如 果 项 目 被 标 记 则 切 换

T

没 有 标 记 项 目

C-t

标 记 所 有 项 目

:

为 每 个 标 记 的 项 目 运 行 一 个 命 令

f

输 入 过 滤 项 目 的 格 式

H

跳 转 到 起 始 窗 格

O

更 改 排 序 字 段

r

反 向 排 序

v

切 换 预 览

q

退 出 模 式

选 择 会 话 、 窗 口 或 窗 格 后 , ’%%’ 的 第 一 个 实 例 和 所 有 实 例 ’%1’ 在 template 中 被 目 标 替 换 , 并 将 结 果 执 行 为 命 令 。 如 果 未 给 出 template , 则 使 用 "switch-client -t ’%%’"。

-O 指 定 了 初 始 排 序 字 段 : 可 以 是 ’index’ 、 ’name’ 或 ’time’ 中 的 一 个 。 -r 可 以 反 转 排 序 顺 序 。 -f 指 定 了 一 个 初 始 过 滤 器 : 该 过 滤 器 是 一 个 格 式 化 字 符 串 , 如 果 它 的 值 为 零 , 则 不 显 示 列 表 中 的 该 项 , 否 则 就 会 显 示 。 如 果 过 滤 器 导 致 列 表 为 空 , 则 会 被 忽 略 。 -F 指 定 了 树 中 每 个 项 目 的 格 式 , -K 指 定 了 每 个 快 捷 键 的 格 式 ; 这 两 个 格 式 化 字 符 串 将 分 别 对 每 行 进 行 求 值 。 -N 开 始 时 不 显 示 预 览 。 -G 包 括 树 中 所 有 会 话 组 中 的 所 有 会 话 , 而 不 仅 仅 是 第 一 个 会 话 组 。 该 命 令 仅 在 至 少 有 一 个 客 户 端 连 接 时 有 效 。

customize-mode [-NZ] [-F 格 式 ] [-f 过 滤 器 ] [-t 目 标 窗 格 ] [模 板 ]

: 将 窗 格 置 于 自 定 义 模 式 , 可 以 从 列 表 中 浏 览 和 修 改 选 项 和 键 绑 定 。 该 列 表 中 的 选 项 值 显 示 为 当 前 窗 口 中 活 动 窗 格 的 值 。 -Z 缩 放 窗 格 。 自 定 义 模 式 下 可 以 使 用 以 下 按 键 :

快 捷 键

功 能

Enter

设 置 窗 格 、 窗 口 、 会 话 或 全 局 选 项 值

Up

选 择 上 一 项

Down

选 择 下 一 项

+

展 开 所 选 项 目

-

折 叠 所 选 项 目

M-+

展 开 所 有 项 目

M--

折 叠 所 有 项 目

s

设 置 选 项 值 或 键 属 性

S

设 置 全 局 选 项 值

w

设 置 窗 口 选 项 值 , 如 果 选 项 用 于 窗 格 和 窗 口

d

将 选 项 或 键 设 置 为 默 认 值

D

将 标 记 选 项 和 标 记 键 设 置 为 默 认 值

u

取 消 设 置 选 项 ( 如 果 是 全 局 设 置 为 默 认 值 ) 或 取 消 绑 定 键

U

取 消 设 置 标 记 选 项 并 取 消 绑 定 标 记 键

C-s

按 名 称 搜 索

n

重 复 上 次 搜 索

t

如 果 项 目 被 标 记 则 切 换

T

没 有 标 记 项 目

C-t

标 记 所 有 项 目

f

输 入 过 滤 项 目 的 格 式

v

切 换 选 项 信 息

q

退 出 模 式

-f 指 定 了 一 个 初 始 过 滤 器 : 过 滤 器 是 一 个 格 式 , 如 果 它 求 值 为 零 , 则 列 表 中 的 项 目 不 会 显 示 , 否 则 会 显 示 。 如 果 过 滤 器 会 导 致 空 列 表 , 则 会 被 忽 略 。 -F 指 定 了 树 中 每 个 项 目 的 格 式 。 -N 开 始 时 不 显 示 选 项 信 息 。 此 命 令 仅 在 至 少 有 一 个 客 户 端 连 接 时 才 起 作 用 。

display-panes [-bN] [-d 持 续 时 间 ] [-t 目 标 客 户 端 ] [模 板 ]

(别 名 : Ic displayp)

显 示 由 target-client 显 示 的 每 个 窗 格 的 可 见 指 示 器 。 请 参 阅 display-panes-colourdisplay-panes-active-colour 会 话 选 项 。 在 按 下 键 ( 除 非 给 出 -N ) 或 持 续 时 间 毫 秒 后 , 指 示 器 将 关 闭 。 如 果 未 给 出 -d , 则 使 用 display-panes-time 。 持 续 时 间 为 零 表 示 指 示 器 保 持 到 按 下 键 为 止 。 在 指 示 器 在 屏 幕 上 时 , 可 以 使 用 ’0’ 到 ’9’ 键 选 择 窗 格 , 这 将 导 致 使 用 ’%%’ 替 换 窗 格 代 号 的 命 令 模 板 被 执 行 。 默 认 的 模 板 是 "select-pane -t ’%%’"。 使 用 -b , 直 到 指 示 器 关 闭 , 其 他 命 令 不 会 被 阻 塞 。

find-window [-iCNrTZ] [-t 目 标 窗 格 ] 匹 配 字 符 串

(别 名 : Ic findw)

在 窗 口 名 称 、 标 题 和 可 见 内 容 ( 但 不 包 括 历 史 记 录 ) 中 搜 索 fnmatch(3) 模 式 或 带 有 -r 的 正 则 表 达 式 匹 配 字 符 串 。 标 志 控 制 匹 配 行 为 : -C 仅 匹 配 可 见 窗 口 内 容 , -N 仅 匹 配 窗 口 名 称 , -T 仅 匹 配 窗 口 标 题 。 -i 使 搜 索 忽 略 大 小 写 。 默 认 为 -CNT-Z 最 大 化 所 在 窗 格 。

此 命 令 仅 在 至 少 连 接 了 一 个 客 户 端 时 才 有 效 。

join-pane [-bdfhv] [-l 尺 寸 ] [-s 源 窗 格 ] [-t 目 的 窗 格 ]

(别 名 : Ic joinp)

类 似 于 split-window , 但 是 不 是 将 目 的 窗 格 分 割 并 创 建 一 个 新 窗 格 , 而 是 将 它 分 割 并 将 源 窗 格 移 动 到 该 位 置 。 这 可 用 于 撤 消 break-pane 。 使 用 -b 选 项 将 源 窗 格 加 入 到 目 的 窗 格 的 左 侧 或 上 方 。

如 果 省 略 -s , 并 且 存 在 标 记 的 窗 格 ( 参 见 select-pane -m ) , 则 使 用 标 记 的 窗 格 而 不 是 当 前 窗 格 。

kill-pane [-a] [-t 目 标 窗 格 ]

(别 名 : Ic killp)

销 毁 给 定 的 窗 格 。 如 果 包 含 窗 格 的 窗 口 中 没 有 窗 格 , 则 该 窗 口 也 会 被 销 毁 。 -a 选 项 会 销 毁 除 使 用 -t 给 出 的 窗 格 之 外 的 所 有 窗 格 。

kill-window [-a] [-t 目 标 窗 口 ]

(别 名 : Ic killw)

销 毁 当 前 窗 口 或 目 标 窗 口 中 的 窗 口 , 并 将 其 从 任 何 关 联 的 会 话 中 移 除 。 -a 选 项 会 销 毁 除 使 用 -t 给 出 的 窗 口 之 外 的 所 有 窗 口 。

last-pane [-deZ] [-t 目 标 窗 口 ]

(别 名 : Ic lastp)

选 择 上 一 个 ( 先 前 选 择 的 ) 窗 格 。 -Z 在 窗 格 处 于 最 大 化 状 态 时 保 持 最 大 化 状 态 。 -e 启 用 , -d 禁 用 窗 格 的 输 入 。

last-window [-t 目 标 会 话 ]

(别 名 : Ic last)

选 择 上 一 个 ( 先 前 选 择 的 ) 窗 口 。 如 果 未 指 定 目 标 会 话 , 则 选 择 当 前 会 话 的 最 后 一 个 窗 口 。

link-window [-abdk] [-s 源 窗 口 ] [-t 目 的 窗 口 ]

(别 名 : Ic linkw)

源 窗 口 窗 口 链 接 到 指 定 的 目 的 窗 口 窗 口 。 如 果 指 定 了 目 的 窗 口 , 但 没 有 这 样 的 窗 口 , 则 将 源 窗 口 链 接 到 该 位 置 。 使 用 -a-b , 窗 口 将 移 动 到 目 的 窗 口 之 后 或 之 前 的 下 一 个 索 引 位 置 ( 必 要 时 移 动 现 有 窗 口 ) 。 如 果 给 出 了 -k 并 且 目 的 窗 口 存 在 , 则 销 毁 它 , 否 则 会 生 成 一 个 错 误 。 如 果 给 出 了 -d , 则 不 会 选 择 新 链 接 的 窗 口 。

list-panes [-as] [-F 格 式 ] [-f 过 滤 器 ] [-t 目 标 ]

(别 名 : Ic lsp)

如 果 给 出 了 -a , 则 忽 略 目 标 并 列 出 服 务 器 上 的 所 有 窗 格 。 如 果 给 出 了 -s , 则 目 标 是 一 个 会 话 ( 或 当 前 会 话 ) 。 如 果 两 者 都 没 有 给 出 , 则 目 标 是 一 个 窗 口 ( 或 当 前 窗 口 ) 。 -F 指 定 每 行 的 格 式 , -f 指 定 过 滤 器 。 只 显 示 过 滤 器 为 true 的 窗 格 。 请 参 见 格 式 部 分 。

list-windows [-a] [-F 格 式 ] [-f 过 滤 器 ] [-t 目 标 会 话 ]

(别 名 : Ic lsw)

如 果 给 出 了 -a , 则 列 出 服 务 器 上 的 所 有 窗 口 。 否 则 , 列 出 当 前 会 话 或 目 标 会 话 中 的 窗 口 。 -F 指 定 每 行 的 格 式 , -f 指 定 过 滤 器 。 只 显 示 过 滤 器 为 true 的 窗 口 。 请 参 见 格 式 部 分 。

move-pane [-bdfhv] [-l 尺 寸 ] [-s 源 窗 格 ] [-t 目 的 窗 格 ]

(别 名 : Ic movep)

join-pane 一 样 。

move-window [-abrdk] [-s 源 窗 口 ] [-t 目 的 窗 口 ]

(别 名 : Ic movew)

这 类 似 于 link-window , 但 是 将 源 窗 口 中 的 窗 口 移 动 到 目 的 窗 口 中 。 使 用 -r , 会 话 中 的 所 有 窗 口 都 按 顺 序 重 新 编 号 , 遵 守 base-index 选 项 。

new-window [-abdkPS] [-c 起 始 目 录 ] [-e 环 境 ] [-F 格 式 ] [-n 窗 口 名 称 ] [-t 目 标 窗 户 ] [外 壳 命 令 ]

(别 名 : Ic neww)

创 建 一 个 新 窗 口 。 使 用 -a-b , 新 窗 口 将 在 指 定 的 目 标 窗 口 之 后 或 之 前 的 下 一 个 索 引 位 置 插 入 , 如 果 必 要 , 窗 口 会 向 上 移 动 ; 否 则 , 目 标 窗 口 就 是 新 窗 口 的 位 置 。

如 果 给 出 了 -d , 则 会 话 不 会 将 新 窗 口 设 置 为 当 前 窗 口 。 目 标 窗 口 表 示 要 创 建 的 窗 口 ; 如 果 目 标 已 经 存 在 , 则 会 显 示 错 误 , 除 非 使 用 了 -k 标 志 , 在 这 种 情 况 下 , 它 将 被 销 毁 。 如 果 给 出 了 -S 并 且 已 经 存 在 一 个 名 为 窗 口 名 称 的 窗 口 , 则 选 择 该 窗 口 ( 除 非 还 给 出 了 -d , 在 这 种 情 况 下 , 该 命 令 不 执 行 任 何 操 作 ) 。

外 壳 命 令 是 要 执 行 的 命 令 。 如 果 未 指 定 外 壳 命 令 , 则 使 用 default-command 选 项 的 值 。 -c 指 定 创 建 新 窗 口 的 工 作 目 录 。

当 外 壳 命 令 完 成 后 , 窗 口 会 关 闭 。 请 参 见 remain-on-exit 选 项 以 更 改 此 行 为 。

-e 的 格 式 为 ’VARIABLE=value’ , 用 于 为 新 创 建 的 窗 口 设 置 环 境 变 量 ; 可 以 指 定 多 次 。

所 有 在 tmux 中 运 行 的 程 序 , 其 TERM 环 境 变 量 必 须 设 置 为 ’screen’ 或 ’tmux’ 。 新 窗 口 将 自 动 在 其 环 境 中 添 加 ’TERM=screen’ , 但 是 必 须 注 意 不 要 在 shell 启 动 文 件 或 -e 选 项 中 重 置 此 变 量 。

使 用 -P 选 项 , 在 创 建 新 窗 口 后 打 印 有 关 窗 口 的 信 息 。 默 认 情 况 下 , 它 使 用 格 式 ’#{session_name}:#{window_index}’ , 但 是 可 以 使 用 -F 指 定 不 同 的 格 式 。

next-layout [-t 目 标 窗 口 ]

(别 名 : Ic nextl)

将 窗 口 移 动 到 下 一 个 布 局 并 重 新 排 列 窗 格 以 适 合 。

next-window [-a] [-t 目 标 会 话 ]

(别 名 : Ic next)

移 动 到 会 话 中 的 下 一 个 窗 口 。 如 果 使 用 了 -a , 则 移 动 到 具 有 警 报 的 下 一 个 窗 口 。

pipe-pane [-IOo] [-t 目 标 窗 格 ] [外 壳 命 令 ]

(别 名 : Ic pipep)

将 由 目 标 窗 格 中 的 程 序 发 送 的 输 出 管 道 传 输 到 外 壳 命 令 中 , 或 者 反 之 亦 然 。 一 个 窗 格 每 次 只 能 连 接 到 一 个 命 令 , 执 行 外 壳 命 令 前 会 关 闭 任 何 现 有 的 管 道 。 外 壳 命 令 字 符 串 可 以 包 含 status-left 选 项 支 持 的 特 殊 字 符 序 列 。 如 果 没 有 给 出 外 壳 命 令 , 则 关 闭 当 前 的 管 道 ( 如 果 有 ) 。

-I-O 指 定 连 接 到 窗 格 的 外 壳 命 令 输 出 流 : 使 用 -I , 将 连 接 stdout( 因 此 , 外 壳 命 令 打 印 的 任 何 内 容 都 会 被 写 入 窗 格 , 就 好 像 是 手 动 输 入 的 一 样 ) ; 使 用 -O , 将 连 接 stdin( 因 此 , 窗 格 中 的 任 何 输 出 都 会 被 管 道 传 输 到 外 壳 命 令 ) 。 两 者 都 可 以 一 起 使 用 。 如 果 两 者 都 没 有 指 定 , 则 使 用 -O

只 有 在 不 存 在 先 前 的 管 道 的 情 况 下 , -o 选 项 才 会 打 开 新 的 管 道 , 允 许 通 过 单 个 按 键 切 换 管 道 , 例 如 :

bind-key C-p pipe-pane -o ’cat >>~/output.#I-#P’

previous-layout [-t 目 标 窗 口 ]

(别 名 : Ic prevl)

移 动 到 会 话 中 的 上 一 个 布 局 。

previous-window [-a] [-t 目 标 会 话 ]

(别 名 : Ic prev)

移 动 到 会 话 中 的 上 一 个 窗 口 。 如 果 使 用 了 -a , 则 移 动 到 具 有 警 报 的 上 一 个 窗 口 。

rename-window [-t 目 标 窗 口 ] 新 名 称

(别 名 : Ic renamew)

将 当 前 窗 口 或 指 定 的 目 标 窗 口 窗 口 ( 如 果 指 定 ) 重 命 名 为 新 名 称

resize-pane [-DLMRTUZ] [-t 目 标 窗 格 ] [-x 宽 度 ] [-y 高 度 ] [adjustment]

(别 名 : Ic resizep)

使 用 -U-D-L-R , 将 窗 格 向 上 、 向 下 、 向 左 或 向 右 调 整 adjustment , 或 使 用 -x-y 调 整 到 绝 对 大 小 。 adjustment 以 行 或 列 为 单 位 给 出 ( 默 认 为 1) ; -x-y 可 以 作 为 行 或 列 的 数 量 给 出 , 也 可 以 在 其 后 加 上 ’%’ , 表 示 窗 口 大 小 的 百 分 比 ( 例 如 ’-x 10%’ ) 。 使 用 -Z , 活 动 窗 格 在 缩 放 ( 占 据 整 个 窗 口 ) 和 未 缩 放 ( 在 布 局 中 的 正 常 位 置 ) 之 间 切 换 。

-m 开 始 调 整 鼠 标 大 小 ( 仅 当 绑 定 到 鼠 标 键 绑 定 时 才 有 效 , 请 参 阅 鼠 标 支 持 ) 。

-t 修 剪 当 前 光 标 位 置 下 方 的 所 有 行 , 并 将 行 移 出 历 史 记 录 以 替 换 它 们 。

resize-window [-aADLRU] [-t 目 标 窗 口 ] [-x 宽 度 ] [-y 高 度 ] [adjustment]

(别 名 : Ic resizew)

使 用 -U-D-L-R , 将 窗 口 向 上 、 向 下 、 向 左 或 向 右 调 整 adjustment , 或 使 用 -x-y 调 整 到 绝 对 大 小 。 adjustment 以 行 或 单 元 格 为 单 位 给 出 ( 默 认 为 1) 。 -A 设 置 包 含 窗 口 的 最 大 会 话 的 大 小 ; -a 设 置 最 小 会 话 的 大 小 。 此 命 令 将 自 动 将 window-size 设 置 为 手 动 模 式 。

respawn-pane [-k] [-c 起 始 目 录 ] [-e 环 境 ] [-t 目 标 窗 格 ] [外 壳 命 令 ]

(别 名 : Ic respawnp)

在 命 令 退 出 的 窗 格 中 重 新 激 活 命 令 ( 请 参 见 remain-on-exit 窗 口 选 项 ) 。 如 果 未 给 出 外 壳 命 令 , 则 执 行 创 建 或 最 后 重 新 生 成 窗 格 时 使 用 的 命 令 。 窗 格 必 须 已 处 于 非 活 动 状 态 , 除 非 给 出 了 -k , 在 这 种 情 况 下 , 将 终 止 任 何 现 有 的 命 令 。 -c 为 窗 格 指 定 新 的 工 作 目 录 。 -e 选 项 的 含 义 与 new-window 命 令 相 同 。

respawn-window [-k] [-c 起 始 目 录 ] [-e 环 境 ] [-t 目 标 窗 口 ] [外 壳 命 令 ]

(别 名 : Ic respawnw)

在 命 令 退 出 的 窗 口 中 重 新 激 活 命 令 ( 请 参 见 remain-on-exit 窗 口 选 项 ) 。 如 果 未 给 出 外 壳 命 令 , 则 执 行 创 建 或 最 后 重 新 生 成 窗 口 时 使 用 的 命 令 。 窗 口 必 须 已 处 于 非 活 动 状 态 , 除 非 给 出 了 -k , 在 这 种 情 况 下 , 将 终 止 任 何 现 有 的 命 令 。 -c 为 窗 口 指 定 新 的 工 作 目 录 。 -e 选 项 的 含 义 与 new-window 命 令 相 同 。

rotate-window [-DUZ] [-t 目 标 窗 口 ]

(别 名 : Ic rotatew)

旋 转 窗 口 内 窗 格 的 位 置 , 可 以 使 用 -U 向 上 ( 数 字 更 低 ) 旋 转 , 也 可 以 向 下 ( 数 字 更 高 ) 旋 转 。 如 果 窗 口 已 缩 放 , 则 使 用 -Z 保 持 窗 口 缩 放 。

select-layout [-Enop] [-t 目 标 窗 格 ] [布 局 名 称 ]

(别 名 : Ic selectl)

为 窗 口 选 择 特 定 的 布 局 。 如 果 未 给 出 布 局 名 称 , 则 重 新 应 用 上 一 次 使 用 的 预 设 布 局 ( 如 果 有 ) 。 -n-p 等 同 于 next-layoutprevious-layout 命 令 。 -o 在 可 能 的 情 况 下 应 用 最 后 设 置 的 布 局 ( 撤 销 最 近 的 布 局 更 改 ) 。 -E 将 当 前 窗 格 和 其 旁 边 的 任 何 窗 格 均 匀 展 开 。

select-pane [-DdeLlMmRUZ] [-T 标 题 ] [-t 目 标 窗 格 ]

(别 名 : Ic selectp)

将 窗 格 目 标 窗 格 设 置 为 其 窗 口 中 的 活 动 窗 格 。 如 果 使 用 了 -D-L-R-U 中 的 一 个 , 则 分 别 使 用 目 标 窗 格 下 方 、 左 侧 、 右 侧 或 上 方 的 窗 格 。 如 果 窗 口 已 缩 放 , 则 使 用 -Z 保 持 窗 口 缩 放 。 -l 等 同 于 使 用 last-pane 命 令 。 -e 启 用 或 -d 禁 用 窗 格 的 输 入 。 -T 设 置 窗 格 标 题 。

使 用 -m-M 分 别 设 置 和 清 除 标 记 窗 格 。 一 次 只 有 一 个 标 记 窗 格 , 设 置 新 的 标 记 窗 格 会 清 除 上 一 个 标 记 窗 格 。 标 记 窗 格 是 -sjoin-panemove-paneswap-paneswap-window 的 默 认 目 标 。

select-window [-lnpT] [-t 目 标 窗 口 ]

(别 名 : Ic selectw)

选 择 目 标 窗 口 窗 口 。 -l-n-p 分 别 等 同 于 last-windownext-windowprevious-window 命 令 。 如 果 给 出 -T 并 且 所 选 窗 口 已 经 是 当 前 窗 口 , 则 该 命 令 的 行 为 类 似 于 last-window

split-window [-bdfhIvPZ] [-c 起 始 目 录 ] [-e 环 境 ] [-l 尺 寸 ] [-t 目 标 窗 格 ] [外 壳 命 令 ] [-F 格 式 ]

(别 名 : Ic splitw)

通 过 分 割 目 标 窗 格 创 建 新 的 窗 格 : -h 进 行 水 平 分 割 , -v 进 行 垂 直 分 割 ; 如 果 没 有 指 定 , 则 默 认 为 -v-l 选 项 指 定 新 窗 格 的 大 小 , 以 行 ( 垂 直 分 割 ) 或 列 ( 水 平 分 割 ) 为 单 位 ; 尺 寸 可 以 后 跟 ’%’ , 以 指 定 可 用 空 间 的 百 分 比 。 -b 选 项 将 创 建 新 的 窗 格 置 于 目 标 窗 格 的 左 侧 或 上 方 。 -f 选 项 创 建 一 个 跨 越 整 个 窗 口 高 度 ( 使 用 -h ) 或 整 个 窗 口 宽 度 ( 使 用 -v ) 的 新 窗 格 , 而 不 是 分 割 活 动 窗 格 。 如 果 窗 口 未 缩 放 , 则 使 用 -Z 进 行 缩 放 , 如 果 已 经 缩 放 , 则 保 持 窗 口 缩 放 。

空 的 外 壳 命 令 ( ’’) 将 创 建 一 个 没 有 运 行 命 令 的 窗 格 。 可 以 使 用 display-message 命 令 将 输 出 发 送 到 此 类 窗 格 。 如 果 未 指 定 或 为 空 外 壳 命 令 , 则 -I 标 志 将 创 建 一 个 空 的 窗 格 , 并 将 任 何 来 自 标 准 输 入 的 输 出 转 发 到 该 窗 格 。 例 如 :

$ make 2>&1|tmux splitw -dI &

所 有 其 他 选 项 与 new-window 命 令 具 有 相 同 的 含 义 。

swap-pane [-dDUZ] [-s 源 窗 格 ] [-t 目 的 窗 格 ]

(别 名 : Ic swapp)

交 换 两 个 窗 格 。 如 果 使 用 了 -U , 并 且 没 有 使 用 -s 指 定 源 窗 格 , 则 目 的 窗 格 将 与 其 前 一 个 窗 格 ( 在 数 字 上 ) 交 换 ; -D 则 与 下 一 个 窗 格 交 换 ( 在 数 字 上 ) 。 -d 指 示 tmux 不 更 改 活 动 窗 格 , -Z 在 窗 口 已 缩 放 的 情 况 下 保 持 窗 口 缩 放 。

如 果 省 略 -s , 并 且 存 在 标 记 的 窗 格 ( 参 见 select-pane -m ) , 则 使 用 标 记 的 窗 格 而 不 是 当 前 窗 格 。

swap-window [-d] [-s 源 窗 口 ] [-t 目 的 窗 口 ]

(别 名 : Ic swapw)

这 类 似 于 link-window , 但 源 窗 口 和 目 标 窗 口 被 交 换 。 如 果 在 源 窗 口 中 不 存 在 窗 口 , 则 会 出 错 。 如 果 给 出 -d , 则 新 窗 口 不 会 成 为 当 前 窗 口 。

如 果 省 略 了 -s 并 且 存 在 标 记 窗 格 ( 请 参 见 select-pane -m ) , 则 使 用 包 含 标 记 窗 格 的 窗 口 , 而 不 是 当 前 窗 口 。

unlink-window [-k] [-t 目 标 窗 口 ]

(别 名 : Ic unlinkw)

取 消 链 接 目 标 窗 户 。 除 非 给 出 -k , 否 则 只 有 当 窗 口 链 接 到 多 个 会 话 时 , 才 能 取 消 链 接 窗 口 - 窗 口 不 能 链 接 到 没 有 会 话 的 情 况 ; 如 果 指 定 了 -k 并 且 窗 口 只 链 接 到 一 个 会 话 , 则 它 会 被 取 消 链 接 并 删 除 。

按 键 绑 定

tmux 允 许 将 命 令 绑 定 到 大 多 数 键 上 , 带 或 不 带 前 缀 键 。 在 指 定 键 时 , 大 多 数 键 表 示 它 们 自 己 ( 例 如 从 ’A’ 到 ’Z’ ) 。 Ctrl 键 可 以 加 上 ’C-’ 或 ’^’ , Shift 键 可 以 加 上 ’S-’ , Alt( meta) 键 可 以 加 上 ’M-’ 。 此 外 , 还 接 受 以 下 特 殊 键 名 : UpDownLeftRightBSpaceBTabDC ( 删 除 键 ) 、 EndEnterEscapeF1F12HomeIC ( 插 入 键 ) 、 NPage/PageDown/PgDnPPage/PageUp/PgUpSpaceTab 。 请 注 意 , 要 绑 定 ’"’ 或 ’’’ 键 , 需 要 使 用 引 号 , 例 如 :

bind-key ’"’ split-window
bind-key "’" new-window

绑 定 到 Any 键 的 命 令 将 对 所 有 没 有 更 具 体 绑 定 的 键 执 行 。

与 按 键 绑 定 相 关 的 命 令 如 下 :

bind-key [-nr] [-N 笔 记 ] [-T 快 捷 键 表 ] 快 捷 键 命 令 [参 数 ...]

(别 名 : Ic bind)

将 键 快 捷 键 绑 定 到 命 令 命 令 。 键 在 键 表 中 绑 定 。 默 认 情 况 下 ( 没 有 -T) , 键 会 绑 定 在 prefix 键 表 中 。 该 表 用 于 按 下 前 缀 键 后 按 下 的 键 ( 例 如 , 默 认 情 况 下 ’c’ 在 prefix 表 中 绑 定 到 new-window , 因 此 ’C-b c’ 会 创 建 一 个 新 窗 口 ) 。 root 表 用 于 不 使 用 前 缀 键 按 下 的 键 : 将 ’c’ 绑 定 到 new-windowroot 表 中 ( 不 建 议 这 样 做 ) 意 味 着 一 个 简 单 的 ’c’ 将 创 建 一 个 新 窗 口 。 -n-T root 的 别 名 。 键 也 可 以 绑 定 到 自 定 义 键 表 中 , 并 使 用 switch-client -T 命 令 从 键 绑 定 中 切 换 到 它 们 。 -r 标 志 表 示 此 键 可 以 重 复 使 用 , 请 参 见 repeat-time 选 项 。 -N 附 加 一 个 注 释 到 键 上 ( 使 用 list-keys -N 显 示 ) 。

要 查 看 默 认 绑 定 和 可 能 的 命 令 , 请 参 阅 list-keys 命 令 。

list-keys [-1aN] [-P 前 缀 字 符 串 -T 快 捷 键 表 ] [快 捷 键 ]

(别 名 : Ic lsk)

列 出 键 绑 定 。 有 两 种 形 式 : 默 认 情 况 下 , 以 bind-key 命 令 的 形 式 列 出 键 ; -N 仅 列 出 带 有 附 加 注 释 的 键 , 并 仅 显 示 每 个 键 和 注 释 的 键 和 注 释 。

默 认 情 况 下 , 使 用 默 认 形 式 列 出 所 有 键 表 。 -T 仅 列 出 快 捷 键 表 中 的 键 。

-N 形 式 下 , 默 认 仅 列 出 rootprefix 键 表 中 的 键 ; -T 也 仅 列 出 快 捷 键 表 中 的 键 。 -P 指 定 在 每 个 键 前 要 打 印 的 前 缀 , -1 仅 列 出 第 一 个 匹 配 的 键 。 -a 列 出 没 有 注 释 的 键 的 命 令 , 而 不 是 跳 过 它 们 。

send-keys [-FHKlMRX] [-c 目 标 客 户 端 ] [-N 重 复 计 数 ] [-t 目 标 窗 格 ] 快 捷 键 ...

(别 名 : Ic send)

将 一 个 或 多 个 键 发 送 到 窗 口 。 每 个 参 数 快 捷 键 都 是 要 发 送 的 键 的 名 称 ( 例 如 ’C-a’ 或 ’NPage’ ) ; 如 果 字 符 串 不 能 被 识 别 为 键 , 则 它 将 作 为 一 系 列 字 符 发 送 。 所 有 参 数 按 顺 序 从 第 一 个 到 最 后 一 个 发 送 。 如 果 没 有 给 出 键 并 且 该 命 令 绑 定 到 一 个 键 , 则 使 用 该 键 。

-l 标 志 禁 用 键 名 称 查 找 , 并 将 键 处 理 为 字 面 的 UTF-8 字 符 。 -H 标 志 期 望 每 个 键 都 是 ASCII 字 符 的 十 六 进 制 数 字 。

-R 标 志 导 致 终 端 状 态 被 重 置 。

-M 传 递 鼠 标 事 件 ( 仅 当 绑 定 到 鼠 标 键 绑 定 时 才 有 效 , 请 参 阅 鼠 标 支 持 ) 。

-X 用 于 将 命 令 发 送 到 复 制 模 式 - 请 参 阅 窗 户 和 窗 格 部 分 。 -N 指 定 重 复 计 数 , -F 在 适 当 的 参 数 中 展 开 格 式 。

send-prefix [-2] [-t 目 标 窗 格 ]

发 送 前 缀 键 , 或 者 如 果 按 下 前 缀 键 , 发 送 -2 次 要 前 缀 键 , 就 像 它 被 按 下 一 样 。

unbind-key [-anq] [-T 快 捷 键 表 ] 快 捷 键

(别 名 : Ic unbind)

取 消 绑 定 绑 定 到 key 的 命 令 。 -n-Tbind-key 相 同 。 如 果 存 在 -a , 则 删 除 所 有 键 绑 定 。 -q 选 项 可 以 防 止 返 回 错 误 。

选 项

可 以 通 过 更 改 各 种 选 项 的 值 来 修 改 tmux 的 外 观 和 行 为 。 有 四 种 类 型 的 选 项 : 服 务 器 选 项会 话 选 项窗 口 选 项窗 格 选 项

tmux 服 务 器 具 有 一 组 全 局 服 务 器 选 项 , 这 些 选 项 不 适 用 于 任 何 特 定 的 窗 口 、 会 话 或 面 板 。 这 些 选 项 可 以 使 用 set-option -s 命 令 进 行 更 改 , 或 者 可 以 使 用 show-options -s 命 令 进 行 显 示 。

此 外 , 每 个 单 独 的 会 话 可 以 有 一 组 会 话 选 项 , 还 有 一 组 单 独 的 全 局 会 话 选 项 。 没 有 配 置 特 定 选 项 的 会 话 会 从 全 局 会 话 选 项 继 承 该 值 。 会 话 选 项 可 以 使 用 set-option 命 令 设 置 或 取 消 设 置 , 并 可 以 使 用 show-options 命 令 列 出 。 可 用 的 服 务 器 和 会 话 选 项 在 set-option 命 令 下 列 出 。

同 样 , 每 个 窗 口 都 有 一 组 窗 口 选 项 , 每 个 窗 格 都 有 一 组 窗 格 选 项 。 窗 格 选 项 继 承 自 窗 口 选 项 。 这 意 味 着 可 以 将 任 何 窗 格 选 项 设 置 为 窗 口 选 项 , 以 将 该 选 项 应 用 于 窗 口 中 未 设 置 选 项 的 所 有 窗 格 。 例 如 , 以 下 命 令 将 为 除 窗 格 0 之 外 的 所 有 窗 格 设 置 背 景 颜 色 为 红 色 :

set -w window-style bg=red
set -pt:.0 window-style bg=blue

还 有 一 组 全 局 窗 口 选 项 , 从 中 继 承 任 何 未 设 置 的 窗 口 或 窗 格 选 项 。 可 以 使 用 set-option -w-p 命 令 更 改 窗 口 和 窗 格 选 项 , 并 使 用 show-option -w-p 显 示 它 们 。

tmux 还 支 持 以 ’@’ 为 前 缀 的 用 户 选 项 。 用 户 选 项 可 以 具 有 任 何 名 称 , 只 要 它 们 以 ’@’ 为 前 缀 , 并 且 可 以 设 置 为 任 何 字 符 串 。 例 如 :

$ tmux set -wq @foo "abc123"
$ tmux show -wv @foo
abc123

设 置 选 项 的 命 令 如 下 :

set-option [-aFgopqsuUw] [-t 目 标 窗 格 ] 选 项 值

(别 名 : Ic set)

使 用 -p 设 置 窗 格 选 项 , 使 用 -w 设 置 窗 口 选 项 , 使 用 -s 设 置 服 务 器 选 项 , 否 则 使 用 会 话 选 项 。 如 果 选 项 不 是 用 户 选 项 , 则 -w-s 可 能 是 不 必 要 的 - tmux 将 根 据 选 项 名 称 推 断 类 型 , 假 设 对 于 窗 格 选 项 , 使 用 -w 。 如 果 给 出 -g , 则 设 置 全 局 会 话 或 窗 口 选 项 。

-F 展 开 选 项 值 中 的 格 式 。 -u 标 志 取 消 设 置 选 项 , 所 以 会 话 将 从 全 局 选 项 继 承 该 选 项 ( 或 者 使 用 -g , 将 全 局 选 项 还 原 为 默 认 值 ) 。 -U 取 消 设 置 选 项 ( 类 似 于 -u ) , 但 如 果 选 项 是 窗 格 选 项 , 则 还 取 消 设 置 窗 口 中 任 何 窗 格 上 的 选 项 。 value 取 决 于 选 项 , 可 以 是 数 字 、 字 符 串 或 标 志 ( on、 off 或 省 略 以 进 行 切 换 ) 。

-o 标 志 可 防 止 设 置 已 设 置 的 选 项 , -q 标 志 可 抑 制 有 关 未 知 或 不 明 确 选 项 的 错 误 。

使 用 -a , 如 果 选 项 需 要 字 符 串 或 样 式 , 则 将 附 加 到 现 有 设 置 。 例 如 :

set -g status-left "foo"
set -ag status-left "bar"

将 导 致 ’foobar’ 。 和 :

set -g status-style "bg=red"
set -ag status-style "fg=blue"

将 导 致 红 色 背 景 蓝 色 前 景 。 如 果 没 有 -a , 结 果 将 是 默 认 背 景 和 蓝 色 前 景 。

show-options [-AgHpqsvw] [-t 目 标 窗 格 ] [选 项 ]

(别 名 : Ic show)

使 用 -p 显 示 窗 格 选 项 ( 或 者 如 果 提 供 了 选 项 , 则 显 示 单 个 选 项 ) , 使 用 -w 显 示 窗 口 选 项 , 使 用 -s 显 示 服 务 器 选 项 , 否 则 显 示 会 话 选 项 。 如 果 选 项 不 是 用 户 选 项 , 则 -w-s 可 能 是 不 必 要 的 - tmux 将 根 据 选 项 名 称 推 断 类 型 , 假 设 对 于 窗 格 选 项 , 使 用 -w 。 如 果 使 用 -g , 则 列 出 全 局 会 话 或 窗 口 选 项 。 -v 仅 显 示 选 项 值 , 不 显 示 名 称 。 如 果 设 置 了 -q , 则 在 取 消 设 置 选 项 时 不 会 返 回 错 误 。 -H 包 括 钩 子 ( 默 认 情 况 下 省 略 ) 。 -A 包 括 从 父 选 项 集 继 承 的 选 项 , 这 些 选 项 带 有 星 号 标 记 。

可 用 的 服 务 器 选 项 是 :

backspace 快 捷 键

设 置 由 tmux 发 送 的 退 格 键 。

buffer-limit 数 字

设 置 缓 冲 区 的 数 量 ; 当 新 缓 冲 区 添 加 到 堆 栈 顶 部 时 , 如 有 必 要 , 旧 缓 冲 区 将 从 底 部 移 除 以 保 持 此 最 大 长 度 。

command-alias[] name=value

这 是 命 令 的 自 定 义 别 名 数 组 。 如 果 未 知 命 令 与 名 称 匹 配 , 则 将 其 替 换 为 。 例 如 , 之 后 :

set -s command-alias[100] zoom=’resize-pane -Z’

使 用 :

zoom -t:.1

相 当 于 :

resize-pane -Z -t:.1

请 注 意 别 名 是 在 解 析 命 令 时 而 不 是 在 执 行 命 令 时 扩 展 的 , 因 此 使 用 bind-key 绑 定 别 名 将 绑 定 扩 展 形 式 。

default-terminal 终 端

设 置 在 此 会 话 中 创 建 的 新 窗 口 的 默 认 终 端 - TERM 环 境 变 量 的 默 认 值 。 为 了 使 tmux 正 常 工 作 , 必 须 将 其 设 置 为 ’screen’ 、 ’tmux’ 或 其 衍 生 产 品 。

copy-command shell-command

如 果 使 用 不 带 参 数 的 copy-pipe 复 制 模 式 命 令 , 则 将 命 令 传 递 给 管 道 。

escape-time time

设 置 输 入 转 义 后 tmux 等 待 的 时 间 ( 以 毫 秒 为 单 位 ) , 以 确 定 它 是 否 是 函 数 或 元 键 序 列 的 一 部 分 。 默 认 值 为 500 毫 秒 。

editor shell-command

设 置 tmux 运 行 编 辑 器 时 使 用 的 命 令 。

exit-empty [on | off]

如 果 启 用 ( 默 认 ) , 服 务 器 将 在 没 有 活 动 会 话 时 退 出 。

exit-unattached [on | off]

如 果 启 用 , 服 务 器 将 在 没 有 连 接 的 客 户 端 时 退 出 。

extended-keys [on | off | always]

onalways 时 , 启 用 扩 展 键 的 转 义 序 列 被 发 送 到 终 端 , 如 果 tmux 知 道 它 受 支 持 。 tmux 始 终 识 别 扩 展 快 捷 键 本 身 。 如 果 这 个 选 项 是 ontmux 只 会 在 应 用 程 序 请 求 时 将 扩 展 快 捷 键 转 发 给 应 用 程 序 ; 如 果 alwaystmux 将 始 终 转 发 快 捷 键 。

focus-events [on | off]

启 用 此 选 项 后 , 如 果 终 端 支 持 , 将 从 终 端 请 求 焦 点 事 件 , 并 将 其 传 递 到 在 tmux 中 运 行 的 应 用 程 序 。 更 改 此 选 项 后 , 应 分 离 并 重 新 附 加 已 连 接 的 客 户 端 。

history-file 路 径

如 果 不 为 空 , 则 指 定 一 个 文 件 , 在 退 出 时 tmux 将 命 令 提 示 符 历 史 记 录 写 入 该 文 件 , 并 在 启 动 时 从 该 文 件 加 载 历 史 记 录 。

message-limit 数 字

设 置 要 保 存 在 每 个 客 户 端 的 消 息 日 志 中 的 错 误 或 信 息 消 息 的 数 量 。

prompt-history-limit 数 字

为 每 种 类 型 的 命 令 提 示 符 设 置 要 保 存 在 历 史 文 件 中 的 历 史 项 目 数 。

set-clipboard [on | external | off]

尝 试 使 用 xterm(1) 转 义 序 列 设 置 终 端 剪 贴 板 内 容 , 如 果 terminfo(5) 描 述 中 有 Ms 条 目 ( 请 参 见 终 端 信 息 扩 展 章 节 ) 。

如 果 设 置 为 on , 则 tmux 将 接 受 转 义 序 列 以 创 建 缓 冲 区 , 并 尝 试 设 置 终 端 剪 贴 板 。 如 果 设 置 为 externaltmux 将 尝 试 设 置 终 端 剪 贴 板 , 但 忽 略 应 用 程 序 设 置 tmux 缓 冲 区 的 尝 试 。 如 果 设 置 为 off , 则 tmux 既 不 接 受 剪 贴 板 转 义 序 列 , 也 不 尝 试 设 置 剪 贴 板 。

请 注 意 , 需 要 通 过 设 置 资 源 在 xterm(1) 中 启 用 此 功 能 :

disallowedWindowOps: 20,21,SetXprop

或 在 需 要 时 从 xterm(1) 交 互 式 菜 单 更 改 此 属 性 。

terminal-features[] 字 符 串

为 从 terminfo(5) 读 取 的 终 端 类 型 设 置 终 端 功 能 。 tmux 有 一 组 命 名 终 端 功 能 。 每 个 终 端 功 能 将 应 用 适 当 的 更 改 到 正 在 使 用 的 terminfo(5) 条 目 中 。

tmux 可 以 检 测 一 些 常 见 终 端 的 特 性 ; 该 选 项 可 以 用 来 告 诉 tmux 关 于 它 无 法 检 测 到 的 终 端 支 持 的 特 性 。 terminal-overrides 选 项 允 许 设 置 单 个 terminfo(5) 功 能 , 而 terminal-features 则 用 于 标 准 方 式 支 持 的 功 能 类 别 , 但 terminfo(5) 未 报 告 。 必 须 小 心 配 置 此 功 能 , 仅 使 用 终 端 实 际 支 持 的 功 能 。

这 是 一 个 数 组 选 项 , 其 中 每 个 条 目 都 是 由 终 端 类 型 模 式 ( 使 用 fnmatch(3) 匹 配 ) 后 跟 终 端 功 能 列 表 组 成 的 冒 号 分 隔 字 符 串 。 可 用 的 功 能 包 括 :

256

使 用 SGR 转 义 序 列 支 持 256 种 颜 色 。

clipboard

允 许 设 置 系 统 剪 贴 板 。

ccolour

允 许 设 置 光 标 颜 色 。

cstyle

允 许 设 置 光 标 样 式 。

extkeys

支 持 扩 展 键 。

focus

支 持 焦 点 报 告 。

margins

支 持 DECSLRM 边 距 。

mouse

支 持 xterm(1) 鼠 标 序 列 。

osc7

支 持 OSC 7 工 作 目 录 扩 展 。

overline

支 持 上 划 线 SGR 属 性 。

rectfill

支 持 DECFRA 矩 形 填 充 转 义 序 列 。

RGB

支 持 带 有 SGR 转 义 序 列 的 红 绿 蓝 颜 色 。

strikethrough

支 持 删 除 线 SGR 转 义 序 列 。

sync

支 持 同 步 更 新 。

title

支 持 xterm(1) 标 题 设 置 。

usstyle

允 许 设 置 下 划 线 样 式 和 颜 色 。

terminal-overrides[] 字 符 串

允 许 覆 盖 使 用 terminfo(5) 读 取 的 终 端 描 述 。 每 个 条 目 都 是 由 终 端 类 型 模 式 ( 使 用 fnmatch(3) 匹 配 ) 和 一 组 名 称 =值 条 目 组 成 的 由 冒 号 分 隔 的 字 符 串 。

例 如 , 要 将 ’clear’ 的 terminfo(5) 条 目 设 置 为 所 有 与 ’rxvt*’ 匹 配 的 终 端 类 型 的 ’\e[H\e[2J’ , 请 执 行 以 下 操 作 :

rxvt*:clear=\e[H\e[2J

终 端 条 目 值 在 解 释 之 前 通 过 strunvis(3) 传 递 。

user-keys[] 快 捷 键

设 置 用 户 定 义 的 按 键 转 义 序 列 列 表 。 每 个 项 目 都 与 一 个 名 为 ’User0’ 、 ’User1’ 等 的 按 键 相 关 联 。

例 如 :

set -s user-keys[0] "\e[5;30012~"
bind User0 resize-pane -L 3

可 用 的 会 话 选 项 是 :

activity-action [any | none | current | other]

设 置 当 monitor-activity 打 开 时 , 窗 口 活 动 的 操 作 。 any 表 示 与 会 话 链 接 的 任 何 窗 口 的 活 动 都 会 在 该 会 话 的 当 前 窗 口 中 触 发 响 铃 或 消 息 ( 取 决 于 visual-activity ) , none 表 示 忽 略 所 有 活 动 ( 等 价 于 关 闭 monitor-activity ) , current 表 示 仅 忽 略 当 前 窗 口 以 外 的 窗 口 中 的 活 动 , other 表 示 忽 略 当 前 窗 口 中 的 活 动 , 但 不 忽 略 其 他 窗 口 中 的 活 动 。

assume-paste-time 毫 秒

如 果 按 键 的 输 入 速 度 快 于 毫 秒 , 则 假 定 它 们 是 粘 贴 而 不 是 键 入 , 并 且 不 会 处 理 tmux 键 绑 定 。 默 认 值 为 一 毫 秒 , 零 表 示 禁 用 此 功 能 。

base-index 索 引

设 置 创 建 新 窗 口 时 应 从 中 搜 索 未 使 用 索 引 的 基 本 索 引 。 默 认 值 为 零 。

bell-action [any | none | current | other]

设 置 当 monitor-bell 打 开 时 , 在 窗 口 中 响 铃 的 操 作 。 这 些 值 与 activity-action 相 同 。

default-command 外 壳 命 令

将 新 窗 口 的 命 令 ( 如 果 在 创 建 窗 口 时 未 指 定 ) 设 置 为 外 壳 命 令 , 它 可 以 是 任 何 sh(1) 命 令 。 默 认 值 为 空 字 符 串 , 这 将 指 示 tmux 使 用 default-shell 选 项 的 值 创 建 登 录 外 壳 。

default-shell 路 径

指 定 默 认 外 壳 。 当 default-command 选 项 设 置 为 空 时 , 它 将 用 作 新 窗 口 的 登 录 外 壳 , 并 且 必 须 是 可 执 行 文 件 的 完 整 路 径 。 在 启 动 时 , tmux 尝 试 从 SHELL 环 境 变 量 、 getpwuid(3) 返 回 的 外 壳 或 /bin/sh 中 选 择 适 当 的 第 一 个 值 作 为 默 认 值 。 当 tmux 用 作 登 录 外 壳 时 , 应 配 置 此 选 项 。

default-size XxY

设 置 当 window-size 选 项 设 置 为 manual 或 使 用 new-session -d 创 建 会 话 时 , 新 窗 口 的 默 认 大 小 。 该 值 为 宽 度 和 高 度 , 由 ’x’ 字 符 分 隔 。 默 认 值 为 80x24。

destroy-unattached [on | off]

如 果 启 用 并 且 会 话 不 再 附 加 到 任 何 客 户 端 , 它 将 被 销 毁 。

detach-on-destroy [off | on | no-detached]

如 果 为 on( 默 认 值 ) , 当 所 附 加 的 会 话 被 销 毁 时 , 客 户 端 会 分 离 。 如 果 为 off, 则 将 客 户 端 切 换 到 剩 余 会 话 中 最 近 活 动 的 会 话 。 如 果 为 no-detached , 仅 在 不 存 在 分 离 的 会 话 时 分 离 客 户 端 ; 如 果 存 在 分 离 的 会 话 , 则 将 客 户 端 切 换 到 最 近 活 动 的 会 话 。

display-panes-active-colour 颜 色

设 置 display-panes 命 令 使 用 的 颜 色 以 显 示 活 动 窗 格 的 指 示 器 。

display-panes-colour 颜 色

设 置 display-panes 命 令 使 用 的 颜 色 以 显 示 非 活 动 窗 格 的 指 示 器 。

display-panes-time 时 间

设 置 display-panes 命 令 显 示 的 指 示 器 出 现 的 时 间 ( 以 毫 秒 为 单 位 ) 。

display-time 时 间

设 置 状 态 行 消 息 和 其 他 屏 幕 指 示 器 显 示 的 时 间 。 如 果 设 置 为 0, 则 消 息 和 指 示 器 将 一 直 显 示 , 直 到 按 下 按 键 。 时 间 以 毫 秒 为 单 位 。

history-limit 行 数

设 置 窗 口 历 史 记 录 中 保 存 的 最 大 行 数 。 此 设 置 仅 适 用 于 新 窗 口 - 现 有 窗 口 历 史 记 录 不 会 被 调 整 大 小 , 并 保 留 它 们 创 建 时 的 限 制 。

key-table 快 捷 键 表

将 默 认 的 键 表 设 置 为 key-table , 而 不 是 root

lock-after-time 数 字

数 字 秒 的 不 活 动 时 间 后 锁 定 会 话 ( 类 似 于 lock-session 命 令 ) 。 默 认 值 为 不 锁 定 ( 设 置 为 0) 。

lock-command 外 壳 命 令

在 锁 定 每 个 客 户 端 时 要 运 行 的 命 令 。 默 认 值 是 使 用 -np 运 行 lock(1) 。

message-command-style 样 式

设 置 状 态 行 消 息 命 令 样 式 。 这 用 于 在 命 令 模 式 下 使 用 vi(1) 键 的 命 令 提 示 符 。 有 关 如 何 指 定 样 式 , 请 参 阅 样 式 章 节 。

message-style 样 式

设 置 状 态 行 消 息 样 式 。 这 用 于 消 息 和 命 令 提 示 符 。 有 关 如 何 指 定 样 式 , 请 参 阅 样 式 章 节 。

mouse [on | off]

如 果 为 on, 则 tmux 捕 获 鼠 标 并 允 许 将 鼠 标 事 件 绑 定 为 键 绑 定 。 有 关 详 细 信 息 , 请 参 阅 鼠 标 支 持 部 分 。

prefix 快 捷 键

设 置 接 受 为 前 缀 键 的 键 。 除 了 按 键 绑 定 下 描 述 的 标 准 键 之 外 , prefix 还 可 以 设 置 为 特 殊 键 ’None’ , 以 设 置 无 前 缀 。

prefix2 快 捷 键

设 置 接 受 为 次 级 前 缀 键 的 键 。 与 prefix 一 样 , prefix2 可 以 设 置 为 ’None’ 。

renumber-windows [on | off]

如 果 为 on, 在 会 话 中 关 闭 窗 口 时 , 自 动 按 数 字 顺 序 重 新 编 号 其 他 窗 口 。 如 果 已 设 置 base-index 选 项 , 则 遵 循 此 选 项 。 如 果 为 off, 则 不 重 新 编 号 窗 口 。

repeat-time 时 间

允 许 在 指 定 的 时 间 毫 秒 内 连 续 输 入 多 个 命 令 , 而 无 需 再 次 按 下 前 缀 键 ( 默 认 为 500 毫 秒 ) 。 可 以 在 使 用 -r 标 志 绑 定 键 时 设 置 键 是 否 重 复 。 默 认 绑 定 到 resize-pane 命 令 的 键 启 用 了 重 复 。

set-titles [on | off]

尝 试 使 用 tslfsl terminfo(5) 条 目 ( 如 果 存 在 ) 设 置 客 户 端 终 端 标 题 。 如 果 终 端 似 乎 是 xterm(1) , tmux 会 自 动 将 这 些 设 置 为 \e]0;...\007 序 列 。 默 认 情 况 下 , 此 选 项 处 于 关 闭 状 态 。

set-titles-string 字 符 串

如 果 set-titles 打 开 , 则 用 于 设 置 客 户 端 终 端 标 题 的 字 符 串 。 格 式 将 被 展 开 , 请 参 阅 格 式 部 分 。

silence-action [any | none | current | other]

设 置 当 monitor-silence 打 开 时 , 在 窗 口 中 静 音 的 操 作 。 这 些 值 与 activity-action 相 同 。

status [off | on | 2 | 3 | 4 | 5]

显 示 或 隐 藏 状 态 行 或 指 定 其 大 小 。 使 用 on 给 状 态 行 一 行 高 度 ; 2, 3, 4 or 5 更 多 行 。

status-format[] 格 式

指 定 用 于 状 态 行 每 一 行 的 格 式 。 默 认 从 下 面 的 各 个 状 态 选 项 构 建 顶 部 状 态 行 。

status-interval 间 隔

间 隔 秒 更 新 状 态 行 。 默 认 情 况 下 , 每 15 秒 更 新 一 次 。 设 置 为 零 会 禁 用 间 隔 重 绘 。

status-justify [left | centre | right | absolute-centre]

Set the position of the window list in the status line: left, centre or right. centre puts the window list in the relative centre of the available free space; absolute-centre uses the centre of the entire horizontal space.

status-keys [vi | emacs]

在 状 态 行 中 使 用 类 似 于 vi 或 emacs 的 键 绑 定 , 例 如 在 命 令 提 示 符 下 。 默 认 为 emacs, 除 非 设 置 了 VISUAL 或 EDITOR 环 境 变 量 , 并 且 它 们 包 含 字 符 串 ’vi’ 。

status-left 字 符 串

在 状 态 行 左 侧 显 示 字 符 串 ( 默 认 为 会 话 名 称 ) 。 字 符 串 将 通 过 strftime(3) 进 行 转 换 。 还 请 参 阅 格 式样 式 部 分 。

有 关 如 何 设 置 名 称 和 标 题 的 详 细 信 息 , 请 参 阅 名 称 和 标 题 章 节 。

例 子 是 :

#(sysctl vm.loadavg)
#[fg=yellow,bold]#(apm -l)%%#[default] [#S]

默 认 是 ’[#S] ’.

status-left-length 长 度

设 置 状 态 行 左 侧 组 件 的 最 大 length 。 默 认 值 为 10。

status-left-style 样 式

设 置 状 态 行 左 侧 部 分 的 样 式 。 有 关 如 何 指 定 样 式 , 请 参 阅 样 式 章 节 。

status-position [top | bottom]

设 置 状 态 行 的 位 置 。

status-right 字 符 串

在 状 态 行 右 侧 显 示 字 符 串 。 默 认 情 况 下 , 显 示 当 前 窗 格 标 题 ( 用 双 引 号 括 起 来 ) 、 日 期 和 时 间 。 与 status-left 一 样 , 字 符 串 将 传 递 给 strftime(3) , 并 替 换 字 符 对 。

status-right-length 长 度

设 置 状 态 行 右 侧 组 件 的 最 大 长 度 长 度 。 默 认 为 40。

status-right-style 样 式

设 置 状 态 行 右 侧 部 分 的 样 式 。 有 关 如 何 指 定 样 式 , 请 参 阅 样 式 章 节 。

status-style 样 式

设 置 状 态 行 样 式 。 有 关 如 何 指 定 样 式 , 请 参 阅 样 式 章 节 。

update-environment[] 变 量

设 置 要 复 制 到 会 话 环 境 中 的 环 境 变 量 列 表 , 当 创 建 新 会 话 或 附 加 现 有 会 话 时 使 用 。 任 何 在 源 环 境 中 不 存 在 的 变 量 都 将 被 设 置 为 从 会 话 环 境 中 删 除 ( 就 像 对 set-environment 命 令 给 出 了 -r 一 样 ) 。

visual-activity [on | off | both]

如 果 为 on, 则 在 启 用 了 monitor-activity 窗 口 选 项 的 窗 口 中 发 生 活 动 时 , 显 示 消 息 而 不 是 发 送 响 铃 。 如 果 设 置 为 both, 则 会 同 时 发 出 响 铃 和 消 息 。

visual-bell [on | off | both]

如 果 为 on, 则 在 启 用 了 monitor-bell 窗 口 选 项 的 窗 口 中 , 响 铃 时 会 显 示 消 息 , 而 不 是 将 其 传 递 到 终 端 ( 通 常 会 发 出 声 音 ) 。 如 果 设 置 为 both, 则 会 同 时 发 出 响 铃 和 消 息 。 还 请 参 阅 bell-action 选 项 。

visual-silence [on | off | both]

如 果 启 用 了 monitor-silence , 则 在 给 定 窗 口 的 间 隔 过 期 后 打 印 消 息 , 而 不 是 发 送 响 铃 。 如 果 设 置 为 both, 则 会 同 时 发 出 响 铃 和 消 息 。

word-separators 字 符 串

为 会 话 设 置 哪 些 字 符 被 视 为 单 词 分 隔 符 , 以 便 在 复 制 模 式 下 使 用 下 一 个 和 上 一 个 单 词 命 令 。

可 用 的 窗 口 选 项 是 :

aggressive-resize [on | off]

强 制 调 整 所 选 窗 口 的 大 小 。 这 意 味 着 tmux 将 调 整 窗 口 大 小 为 最 小 或 最 大 会 话 的 大 小 ( 请 参 阅 window-size 选 项 ) , 而 不 是 所 附 加 的 会 话 。 当 在 另 一 个 会 话 中 更 改 当 前 窗 口 时 , 窗 口 可 能 会 被 调 整 大 小 ; 此 选 项 适 用 于 支 持 SIGWINCH 的 全 屏 程 序 , 但 不 适 用 于 诸 如 shell 之 类 的 交 互 式 程 序 。

automatic-rename [on | off]

控 制 窗 口 自 动 重 命 名 。 启 用 此 设 置 时 , tmux 将 使 用 由 automatic-rename-format 指 定 的 格 式 自 动 重 命 名 窗 口 。 当 使 用 new-windownew-session 创 建 窗 口 时 , 或 稍 后 使 用 rename-window 或 终 端 转 义 序 列 指 定 名 称 时 , 此 标 志 会 自 动 禁 用 单 个 窗 口 的 重 命 名 。 可 以 使 用 以 下 方 式 全 局 关 闭 它 :

set-option -wg automatic-rename off

automatic-rename-format 格 式

启 用 automatic-rename 选 项 时 使 用 的 格 式 ( 请 参 阅 格 式 ) 。

clock-mode-colour 颜 色

设 置 时 钟 颜 色 。

clock-mode-style [12 | 24]

设 置 时 钟 小 时 格 式 。

fill-character 字 符

设 置 用 于 填 充 窗 口 未 使 用 的 终 端 区 域 的 字 符 。

main-pane-height 高 度
main-pane-width
宽 度

设 置 main-horizontalmain-vertical 布 局 中 主 要 ( 左 侧 或 顶 部 ) 窗 格 的 宽 度 或 高 度 。 如 果 后 缀 为 ’%’ , 则 这 是 窗 口 大 小 的 百 分 比 。

copy-mode-match-style 样 式

在 复 制 模 式 下 设 置 搜 索 匹 配 的 样 式 。 有 关 如 何 指 定 样 式 , 请 参 阅 样 式 章 节 。

copy-mode-mark-style 样 式

设 置 复 制 模 式 下 包 含 标 记 的 行 的 样 式 。 有 关 如 何 指 定 样 式 , 请 参 阅 样 式 部 分 。

copy-mode-current-match-style 样 式

在 复 制 模 式 下 设 置 当 前 搜 索 匹 配 的 样 式 。 有 关 如 何 指 定 样 式 , 请 参 阅 样 式 章 节 。

mode-keys [vi | emacs]

在 复 制 模 式 下 使 用 vi 或 emacs 风 格 的 键 绑 定 。 默 认 为 emacs, 除 非 VISUAL 或 EDITOR 包 含 ’vi’ 。

mode-style 样 式

设 置 窗 口 模 式 样 式 。 有 关 如 何 指 定 样 式 , 请 参 阅 样 式 章 节 。

monitor-activity [on | off]

监 视 窗 口 中 的 活 动 。 有 活 动 的 窗 口 在 状 态 行 中 会 有 突 出 显 示 。

monitor-bell [on | off]

监 视 窗 口 中 的 响 铃 。 有 响 铃 的 窗 口 在 状 态 行 中 会 有 突 出 显 示 。

monitor-silence [interval]

interval 秒 内 监 视 窗 口 中 的 静 默 ( 无 活 动 ) 。 在 此 时 间 段 内 保 持 静 默 的 窗 口 在 状 态 行 中 会 有 突 出 显 示 。 间 隔 为 零 会 禁 用 监 视 。

other-pane-height 高 度

设 置 main-horizontal 布 局 中 其 他 窗 格 ( 不 是 主 窗 格 ) 的 高 度 。 如 果 将 此 选 项 设 置 为 0( 默 认 值 ) , 则 不 会 产 生 任 何 效 果 。 如 果 同 时 设 置 了 main-pane-heightother-pane-height 选 项 , 则 主 窗 格 会 变 得 更 高 , 以 使 其 他 窗 格 达 到 指 定 的 高 度 , 但 不 会 缩 小 。 如 果 后 缀 为 ’%’ , 则 这 是 窗 口 大 小 的 百 分 比 。

other-pane-width 宽 度

other-pane-height 类 似 , 但 设 置 main-vertical 布 局 中 其 他 窗 格 的 宽 度 。

pane-active-border-style 样 式

为 当 前 活 动 的 窗 格 设 置 窗 格 边 框 样 式 。 有 关 如 何 指 定 样 式 , 请 参 阅 样 式 章 节 。 属 性 被 忽 略 。

pane-base-index 索 引

base-index 类 似 , 但 设 置 窗 格 编 号 的 起 始 索 引 。

pane-border-format 格 式

设 置 窗 格 边 框 状 态 行 中 显 示 的 文 本 。

pane-border-indicators [off | colour | arrows | both]

在 仅 具 有 两 个 窗 格 的 窗 口 中 , 仅 对 边 框 的 一 半 上 色 、 显 示 箭 头 标 记 、 绘 制 两 者 或 都 不 绘 制 , 以 指 示 活 动 窗 格 。

pane-border-lines 类 型

设 置 用 于 绘 制 窗 格 边 框 的 字 符 类 型 。 type 可 能 是 以 下 之 一 :

single

使 用 ACS 或 UTF-8 字 符 的 单 行

double

使 用 UTF-8 字 符 的 双 行

heavy

使 用 UTF-8 字 符 的 粗 线

simple

简 单 的 ASCII 字 符

number

窗 格 编 号

当 不 支 持 UTF-8 时 , ’double’ 和 ’heavy’ 将 回 退 到 标 准 的 ACS 线 条 绘 制 。

pane-border-status [off | top | bottom]

关 闭 面 板 边 框 状 态 行 或 设 置 其 位 置 。

pane-border-style 样 式

为 活 动 窗 格 之 外 的 窗 格 设 置 窗 格 边 框 样 式 。 有 关 如 何 指 定 样 式 , 请 参 阅 样 式 章 节 。 属 性 被 忽 略 。

popup-style 样 式

设 置 弹 出 样 式 。 有 关 如 何 指 定 样 式 , 请 参 阅 样 式 章 节 。 属 性 被 忽 略 。

popup-border-style 样 式

设 置 弹 出 边 框 样 式 。 有 关 如 何 指 定 样 式 , 请 参 阅 样 式 章 节 。 属 性 被 忽 略 。

popup-border-lines 类 型

设 置 用 于 绘 制 弹 出 边 框 的 字 符 类 型 。 type 可 能 是 以 下 之 一 :

single

使 用 ACS 或 UTF-8 字 符 的 单 行 ( 默 认 )

rounded

使 用 UTF-8 字 符 的 圆 角 单 变 体

double

使 用 UTF-8 字 符 的 双 行

heavy

使 用 UTF-8 字 符 的 粗 线

simple

简 单 的 ASCII 字 符

padded

简 单 的 ASCII 空 格 字 符

none

无 边 界

当 不 支 持 UTF-8 时 , ’double’ 和 ’heavy’ 将 回 退 到 标 准 的 ACS 线 条 绘 制 。

window-status-activity-style 样 式

设 置 具 有 活 动 警 报 的 窗 口 的 状 态 行 样 式 。 有 关 如 何 指 定 样 式 , 请 参 阅 样 式 部 分 。

window-status-bell-style 样 式

为 带 有 铃 铛 警 报 的 窗 口 设 置 状 态 行 样 式 。 有 关 如 何 指 定 样 式 , 请 参 阅 样 式 章 节 。

window-status-current-format 字 符 串

类 似 于 window-status-format , 但 它 是 当 前 窗 口 时 使 用 的 格 式 。

window-status-current-style 样 式

为 当 前 活 动 窗 口 设 置 状 态 行 样 式 。 有 关 如 何 指 定 样 式 , 请 参 阅 样 式 章 节 。

window-status-format 字 符 串

设 置 窗 口 在 状 态 行 窗 口 列 表 中 显 示 的 格 式 。 请 参 阅 格 式样 式 部 分 。

window-status-last-style 样 式

为 最 后 一 个 活 动 窗 口 设 置 状 态 行 样 式 。 有 关 如 何 指 定 样 式 , 请 参 阅 样 式 章 节 。

window-status-separator 字 符 串

设 置 状 态 行 中 窗 口 之 间 绘 制 的 分 隔 符 。 默 认 是 单 个 空 格 字 符 。

window-status-style 样 式

为 单 个 窗 口 设 置 状 态 行 样 式 。 对 于 如 何 指 定 样 式 , 参 见 样 式 节 。

window-size largest | smallest | manual | latest

配 置 tmux 如 何 确 定 窗 口 大 小 。 如 果 设 置 为 largest , 则 使 用 最 大 附 加 会 话 的 大 小 ; 如 果 设 置 为 smallest , 则 使 用 最 小 附 加 会 话 的 大 小 。 如 果 设 置 为 manual , 则 从 default-size 选 项 设 置 新 窗 口 的 大 小 , 并 自 动 调 整 窗 口 大 小 。 使 用 latesttmux 使 用 最 近 活 动 的 客 户 端 的 大 小 。 另 请 参 阅 resize-window 命 令 和 aggressive-resize 选 项 。

wrap-search [on | off]

如 果 设 置 了 此 选 项 , 则 搜 索 将 绕 过 面 板 内 容 的 末 尾 。 默 认 值 为 on 。

可 用 的 窗 格 选 项 是 :

allow-passthrough [on | off]

允 许 面 板 中 的 程 序 使 用 终 端 转 义 序 列 (\ePtmux;...\e\\) 绕 过 tmux

allow-rename [on | off]

允 许 面 板 中 的 程 序 使 用 终 端 转 义 序 列 (\ek...\e\\) 更 改 窗 口 名 称 。

alternate-screen [on | off]

此 选 项 配 置 是 否 允 许 在 面 板 内 运 行 的 程 序 使 用 终 端 备 用 屏 幕 功 能 , 该 功 能 允 许 使 用 smcuprmcup terminfo(5) 功 能 。 备 用 屏 幕 功 能 在 交 互 式 应 用 程 序 启 动 时 保 留 窗 口 的 内 容 , 并 在 退 出 时 恢 复 它 , 以 便 在 应 用 程 序 启 动 之 前 可 见 的 任 何 输 出 在 退 出 后 重 新 出 现 , 而 不 会 改 变 。

cursor-colour 颜 色

设 置 光 标 的 颜 色 。

pane-colours[] 颜 色

默 认 的 颜 色 调 色 板 。 数 组 中 的 每 个 条 目 定 义 了 当 请 求 具 有 该 索 引 的 颜 色 时 tmux 使 用 的 颜 色 。 索 引 可 以 从 零 到 255。

cursor-style 样 式

设 置 光 标 的 样 式 。 可 用 的 样 式 有 : defaultblinking-blockblockblinking-underlineunderlineblinking-barbar

remain-on-exit [on | off | failed]

设 置 此 标 志 的 面 板 在 其 中 运 行 的 程 序 退 出 时 不 会 被 销 毁 。 如 果 设 置 为 failed , 则 仅 当 程 序 的 退 出 状 态 不 为 零 时 。 可 以 使 用 respawn-pane 命 令 重 新 激 活 面 板 。

remain-on-exit-format 字 符 串

当 启 用 remain-on-exit 时 , 设 置 退 出 窗 格 底 部 显 示 的 文 本 。

scroll-on-clear [on | off]

当 清 除 整 个 屏 幕 并 启 用 此 选 项 时 , 在 清 除 屏 幕 之 前 将 屏 幕 内 容 滚 动 到 历 史 记 录 中 。

synchronize-panes [on | off]

将 输 入 复 制 到 同 一 窗 口 中 所 有 其 他 启 用 此 选 项 的 面 板 中 ( 仅 适 用 于 未 处 于 任 何 模 式 的 面 板 ) 。

window-active-style 样 式

当 它 是 活 动 窗 格 时 设 置 窗 格 样 式 。 有 关 如 何 指 定 样 式 , 请 参 阅 样 式 章 节 。

window-style 样 式

设 置 窗 格 样 式 。 有 关 如 何 指 定 样 式 , 请 参 阅 样 式 章 节 。

钩 子

tmux 允 许 在 各 种 触 发 器 ( 称 为 钩 子 ) 上 运 行 命 令 。 大 多 数 tmux 命 令 都 有 一 个 after 钩 子 , 并 且 有 许 多 与 命 令 无 关 的 钩 子 。

Hooks被 存 储 为 数 组 选 项 , 当 触 发 hook时 , 数 组 成 员 按 顺 序 执 行 。 与 选 项 一 样 , 不 同 的 hook可 能 是 全 局 的 或 属 于 会 话 、 窗 口 或 面 板 。 可 以 使 用 set-hookset-option 命 令 配 置 hooks, 并 使 用 show-hooksshow-options -H 显 示 。 以 下 两 个 命 令 是 等 效 的 :

set-hook -g pane-mode-changed[42] ’set -g status-left-style bg=red’
set-option -g pane-mode-changed[42] ’set -g status-left-style bg=red’

在 不 指 定 数 组 索 引 的 情 况 下 设 置 挂 钩 会 清 除 挂 钩 并 设 置 数 组 的 第 一 个 成 员 。

命 令 的 后 钩 子 在 它 完 成 后 运 行 , 除 非 该 命 令 作 为 钩 子 本 身 的 一 部 分 运 行 。 它 们 以 ’after-’ 前 缀 命 名 。 例 如 , 以 下 命 令 在 每 次 split-window 之 后 添 加 了 一 个 钩 子 来 选 择 even-vertical 布 局 :

set-hook -g after-split-window "selectl even-vertical"

控 制 方 式 部 分 列 出 的 所 有 通 知 都 是 钩 子 ( 不 带 任 何 参 数 ) , 除 了 %exit 。 还 提 供 了 以 下 其 他 钩 子 :

alert-activity

当 窗 口 有 活 动 时 运 行 。 参 见 monitor-activity

alert-bell

当 窗 口 收 到 铃 声 时 运 行 。 参 见 monitor-bell

alert-silence

当 窗 口 静 音 时 运 行 。 参 见 monitor-silence

client-active

当 客 户 端 成 为 其 会 话 的 最 新 活 动 客 户 端 时 运 行 。

client-attached

连 接 客 户 端 时 运 行 。

client-detached

在 客 户 端 分 离 时 运 行

client-focus-in

当 焦 点 进 入 客 户 端 时 运 行

client-focus-out

当 焦 点 退 出 客 户 端 时 运 行

client-resized

在 调 整 客 户 端 大 小 时 运 行 。

client-session-changed

当 客 户 端 的 附 加 会 话 更 改 时 运 行 。

pane-died

当 窗 格 中 运 行 的 程 序 退 出 时 运 行 , 但 remain-on-exit 处 于 打 开 状 态 , 因 此 窗 格 尚 未 关 闭 。

pane-exited

当 窗 格 中 运 行 的 程 序 退 出 时 运 行 。

pane-focus-in

如 果 打 开 了 focus-events 选 项 , 则 在 焦 点 进 入 窗 格 时 运 行 。

pane-focus-out

如 果 打 开 了 focus-events 选 项 , 则 在 焦 点 离 开 窗 格 时 运 行 。

pane-set-clipboard

当 使 用 xterm(1) 转 义 序 列 设 置 终 端 剪 贴 板 时 运 行 。

session-created

在 创 建 新 会 话 时 运 行 。

session-closed

在 会 话 关 闭 时 运 行 。

session-renamed

在 重 命 名 会 话 时 运 行 。

window-linked

当 窗 口 链 接 到 会 话 时 运 行 。

window-renamed

在 重 命 名 窗 口 时 运 行 。

window-resized

在 调 整 窗 口 大 小 时 运 行 。 这 可 能 是 在 运 行 client-resized 挂 钩 之 后 。

window-unlinked

当 窗 口 与 会 话 断 开 链 接 时 运 行 。

使 用 以 下 命 令 管 理 钩 子 :

set-hook [-agpRuw] [-t 目 标 窗 格 ] 钩 子 名 称 命 令

如 果 没 有 -R , 则 将 钩 子 钩 子 名 称 设 置 为 命 令 ( 或 使 用 -u 取 消 设 置 ) 。 标 志 与 set-option 相 同 。

使 用 -R , 立 即 运 行 钩 子 名 称

show-hooks [-gpw] [-t 目 标 窗 格 ]

显 示 钩 子 。 标 志 与 show-options 相 同 。

鼠 标 支 持

如 果 打 开 了 mouse 选 项 ( 默 认 为 关 闭 状 态 ) , tmux 允 许 将 鼠 标 事 件 绑 定 为 按 键 。 每 个 键 的 名 称 由 鼠 标 事 件 ( 例 如 ’MouseUp1’ ) 和 位 置 后 缀 之 一 组 成 , 位 置 后 缀 可 以 是 以 下 之 一 :

Pane 窗 格 内 容
Border 窗 格 边 框
Status 状 态 行 窗 口 列 表
StatusLeft 状 态 行 的 左 侧 部 分
StatusRight 状 态 行 的 右 边 部 分
StatusDefault 状 态 行 的 任 何 其 他 部 分

以 下 鼠 标 事 件 可 用 :

WheelUp WheelDown
MouseDown1 MouseUp1 MouseDrag1 MouseDragEnd1
MouseDown2 MouseUp2 MouseDrag2 MouseDragEnd2
MouseDown3 MouseUp3 MouseDrag3 MouseDragEnd3
SecondClick1 SecondClick2 SecondClick3
DoubleClick1 DoubleClick2 DoubleClick3
TripleClick1 TripleClick2 TripleClick3

’SecondClick’ 事 件 在 双 击 的 第 二 次 单 击 时 触 发 , 即 使 可 能 有 第 三 次 单 击 , 也 会 触 发 ’TripleClick’ 而 不 是 ’DoubleClick’ 。

每 个 都 应 该 以 一 个 位 置 作 为 后 缀 , 例 如 ’MouseDown1Status’ 。

在 绑 定 到 鼠 标 按 键 的 命 令 中 , 可 以 使 用 特 殊 的 令 牌 ’{mouse}’ 或 ’=’ 作 为 目 标 窗 口目 标 窗 格 。 它 解 析 为 鼠 标 事 件 发 生 的 窗 口 或 面 板 ( 例 如 , 在 状 态 行 中 释 放 按 钮 1的 窗 口 , 用 于 ’MouseUp1Status’ 绑 定 , 或 在 滚 动 轮 下 滚 动 的 面 板 , 用 于 ’WheelDownPane’ 绑 定 ) 。

可 以 使 用 send-keys -M 标 志 将 鼠 标 事 件 转 发 到 窗 格 。

默 认 的 键 绑 定 允 许 使 用 鼠 标 选 择 和 调 整 窗 格 大 小 , 复 制 文 本 以 及 使 用 状 态 栏 更 改 窗 口 。 如 果 打 开 了 mouse 选 项 , 则 这 些 绑 定 生 效 。

格 式

某 些 命 令 接 受 带 有 -F 标 志 和 格 式 参 数 。 这 是 一 个 字 符 串 , 用 于 控 制 命 令 的 输 出 格 式 。 格 式 变 量 用 ’#{’ 和 ’}’ 括 起 来 , 例 如 ’#{session_name}’ 。 可 能 的 变 量 在 下 表 中 列 出 , 或 者 可 以 使 用 tmux 选 项 的 名 称 作 为 选 项 的 值 。 一 些 变 量 有 一 个 更 短 的 别 名 , 例 如 ’#S’ ; ’##’ 被 替 换 为 单 个 ’#’ , ’#,’ 被 替 换 为 ’,’ , ’#}’ 被 替 换 为 ’}’ 。

可 以 通 过 前 缀 ’?’ 并 使 用 逗 号 分 隔 两 个 备 选 项 来 使 用 条 件 语 句 ; 如 果 指 定 的 变 量 存 在 且 不 为 零 , 则 选 择 第 一 个 备 选 项 , 否 则 使 用 第 二 个 。 例 如 , ’#{?session_attached,attached,not attached}’ 将 包 括 字 符 串 ’attached’ 如 果 会 话 已 连 接 , 包 括 字 符 串 ’not attached’ 如 果 会 话 未 连 接 , 或 者 ’#{?automatic-rename,yes,no}’ 将 包 括 ’yes’ 如 果 automatic-rename 已 启 用 , 否 则 包 括 ’no’ 。 条 件 语 句 可 以 任 意 嵌 套 。 在 条 件 语 句 内 部 , ’,’ 和 ’}’ 必 须 转 义 为 ’#,’ 和 ’#}’ , 除 非 它 们 是 ’#{...}’ 替 换 的 一 部 分 。 例 如 :

#{?pane_in_mode,#[fg=white#,bg=red],#[fg=red#,bg=white]}#W .

字 符 串 比 较 可 以 通 过 在 两 个 逗 号 分 隔 的 备 选 项 前 缀 ’==’ , ’!=’ , ’<’ , ’>’ , ’<=’ 或 ’>=’ 和 冒 号 来 表 示 。 例 如 , ’#{==:#{host},myhost}’ 将 被 替 换 为 ’1’ 如 果 在 ’myhost’ 上 运 行 , 否 则 替 换 为 ’0’ 。 ’||’ 和 ’&&’ 如 果 两 个 逗 号 分 隔 的 备 选 项 中 有 一 个 或 两 个 都 为 真 , 则 计 算 为 真 , 例 如 ’#{||:#{pane_in_mode},#{alternate_on}}’ 。

’m’ 指 定 fnmatch(3) 或 正 则 表 达 式 比 较 。 第 一 个 参 数 是 模 式 , 第 二 个 是 要 比 较 的 字 符 串 。 一 个 可 选 的 参 数 指 定 标 志 : ’r’ 表 示 模 式 是 一 个 正 则 表 达 式 , 而 不 是 默 认 的 fnmatch(3) 模 式 , ’i’ 表 示 忽 略 大 小 写 。 例 如 : ’#{m:*foo*,#{host}}’ 或 ’#{m/ri:^A,MYVAR}’ 。 ’C’ 在 窗 格 内 容 中 执 行 fnmatch(3) 模 式 或 正 则 表 达 式 搜 索 , 并 在 未 找 到 时 计 算 为 零 , 或 在 找 到 时 计 算 为 行 号 。 与 ’m’ 一 样 , ’r’ 标 志 表 示 搜 索 正 则 表 达 式 , ’i’ 忽 略 大 小 写 。 例 如 : ’#{C/r:^Start}’ 。

可 以 通 过 在 两 个 逗 号 分 隔 的 备 选 项 前 面 加 上 ’e’ 和 运 算 符 来 执 行 数 字 运 算 。 运 算 符 后 面 可 以 给 出 一 个 可 选 的 ’f’ 标 志 , 以 使 用 浮 点 数 , 否 则 使 用 整 数 。 这 可 以 后 跟 一 个 数 字 , 给 出 要 用 于 结 果 的 小 数 位 数 。 可 用 的 运 算 符 有 : 加 法 ’+’ , 减 法 ’-’ , 乘 法 ’*’ , 除 法 ’/’ , 模 数 ’m’ 或 ’%’ ( 请 注 意 , 在 同 时 由 strftime(3) 展 开 的 格 式 中 , ’%%%’ 必 须 转 义 为 ’%%%’ ) , 以 及 数 字 比 较 运 算 符 ’==’ 、 ’!=’ 、 ’<’ 、 ’<=’ 、 ’>’ 和 ’>=’ 。 例 如 , ’#{e|*|f|4:5.5,3}’ 将 5.5 乘 以 3, 得 到 四 位 小 数 的 结 果 , ’#{e|%%%:7,3}’ 返 回 7 和 3 的 模 数 。 ’a’ 用 其 ASCII 码 替 换 数 字 参 数 , 因 此 ’#{a:98}’ 的 结 果 是 ’b’ 。 ’c’ 将 tmux 颜 色 替 换 为 它 的 六 位 十 六 进 制 RGB 值 。

可 以 通 过 在 字 符 串 前 缀 添 加 ’=’ 、 一 个 数 字 和 一 个 冒 号 来 限 制 结 果 字 符 串 的 长 度 。 正 数 从 字 符 串 的 开 头 计 数 , 负 数 从 末 尾 计 数 , 因 此 ’#{=5:pand_title}’ 将 包 括 窗 格 标 题 的 最 多 前 五 个 字 符 , 或 者 ’#{=-5:pand_title}’ 将 包 括 最 后 五 个 字 符 。 第 二 个 参 数 可 以 给 出 后 缀 或 前 缀 - 如 果 提 供 , 则 在 剪 裁 长 度 后 将 其 附 加 或 前 置 到 字 符 串 中 , 例 如 ’#{=/5/...:pand_title}’ 如 果 窗 格 标 题 超 过 五 个 字 符 , 则 会 附 加 ’...’ 。 同 样 , ’p’ 将 字 符 串 填 充 到 给 定 的 宽 度 , 例 如 ’#{p10:pand_title}’ 将 产 生 至 少 10 个 字 符 的 宽 度 。 正 宽 度 在 左 侧 填 充 , 负 宽 度 在 右 侧 填 充 。 ’n’ 展 开 为 变 量 的 长 度 , ’w’ 展 开 为 其 显 示 时 的 宽 度 , 例 如 ’#{n:window_name}’ 。

在 时 间 变 量 前 加 上 ’t:’ 将 其 转 换 为 字 符 串 , 因 此 如 果 ’#{window_activity}’ 给 出 ’1445765102’ , ’#{t:window_activity}’ 将 给 出 ’Sun Oct 25 09:25:02 2015’ 。 添 加 ’p (’ ’’t/p’’) 将 使 用 较 短 但 不 太 准 确 的 时 间 格 式 来 表 示 过 去 的 时 间 。 可 以 使 用 ’f’ 后 缀 指 定 自 定 义 格 式 ( 请 注 意 , 如 果 格 式 单 独 通 过 strftime(3) 传 递 , ’%’ 必 须 转 义 为 ’%%%’ , 例 如 在 status-left 选 项 中 ) : ’#{t/f/%%%H#:%%%M:window_activity}’ , 参 见 strftime(3) 。

’b:’ 和 ’d:’ 前 缀 分 别 是 变 量 的 basename(3) 和 dirname(3) 。 ’q:’ 将 转 义 sh(1) 特 殊 字 符 , 或 使 用 ’h’ 后 缀 转 义 井 号 字 符 ( 因 此 ’#’ 变 成 ’##’ ) 。 ’E:’ 将 两 次 扩 展 格 式 , 例 如 ’#{E:status-left}’ 是 扩 展 status-left 选 项 的 内 容 而 不 是 选 项 本 身 的 结 果 。 ’T:’ 类 似 于 ’E:’ , 但 还 会 扩 展 strftime(3) 格 式 说 明 符 。 ’S:’ 、 ’W:’ 或 ’P:’ 将 循 环 遍 历 每 个 会 话 、 窗 口 或 面 板 , 并 为 每 个 插 入 格 式 。 对 于 窗 口 和 面 板 , 可 以 给 出 两 个 逗 号 分 隔 的 格 式 : 第 二 个 格 式 用 于 当 前 窗 口 或 活 动 面 板 。 例 如 , 要 获 得 一 个 类 似 于 状 态 行 格 式 化 的 窗 口 列 表 :

#{W:#{E:window-status-format} ,#{E:window-status-current-format} }

’N:’ 检 查 窗 口 ( 没 有 任 何 后 缀 或 带 有 ’w’ 后 缀 ) 或 会 话 ( 带 有 ’s’ 后 缀 ) 名 称 是 否 存 在 , 例 如 ’’N/w:foo’’ 如 果 存 在 名 为 ’foo’ 的 窗 口 , 则 替 换 为 1。

形 式 为 ’s/foo/bar/:’ 的 前 缀 将 在 整 个 文 本 中 将 ’foo’ 替 换 为 ’bar’ 。 第 一 个 参 数 可 以 是 扩 展 正 则 表 达 式 , 最 后 一 个 参 数 可 以 是 ’i’ 以 忽 略 大 小 写 , 例 如 ’s/a(.)/\1x/i:’ 将 把 ’abABab’ 改 为 ’bxBxbx’ 。

此 外 , 可 以 使 用 ’#()’ 将 shell 命 令 的 输 出 的 最 后 一 行 插 入 到 格 式 中 。 例 如 , ’#(uptime)’ 将 插 入 系 统 的 正 常 运 行 时 间 。 在 构 造 格 式 时 , tmux 不 等 待 ’#()’ 命 令 完 成 ; 相 反 , 使 用 运 行 相 同 命 令 的 上 一 个 结 果 , 或 者 如 果 命 令 之 前 没 有 运 行 , 则 使 用 占 位 符 。 如 果 命 令 尚 未 退 出 , 则 使 用 输 出 中 最 近 的 一 行 , 但 是 状 态 行 不 会 更 新 超 过 一 秒 钟 。 使 用 /bin/sh 执 行 命 令 , 并 使 用 tmux 全 局 环 境 设 置 ( 请 参 见 全 局 和 会 话 环 境 部 分 ) 。

’l’ 指 定 字 符 串 应 该 按 字 面 意 义 解 释 而 不 是 扩 展 。 例 如 , ’#{l:#{?pane_in_mode,yes,no}}’ 将 被 替 换 为 ’#{?pane_in_mode,yes,no}’ 。

在 适 当 的 情 况 下 , 可 以 使 用 以 下 变 量 :

变 量 名 别 名 替 换 为
active_window_index 会 话 中 活 动 窗 口 的 索 引
alternate_on 如 果 窗 格 在 备 用 屏 幕 中 则 为 1
alternate_saved_x 在 备 用 屏 幕 中 保 存 光 标 X
alternate_saved_y 在 备 用 屏 幕 中 保 存 光 标 Y
buffer_created 缓 冲 区 创 建 时 间
buffer_name 缓 冲 区 名 称
buffer_sample 缓 冲 区 开 始 的 样 本
buffer_size 指 定 缓 冲 区 的 大 小 ( 以 字 节 为 单 位 )
client_activity 客 户 端 上 次 活 动 的 时 间
client_cell_height 每 个 客 户 单 元 格 的 高 度 ( 以 像 素 为 单 位 )
client_cell_width 每 个 客 户 单 元 格 的 宽 度 ( 以 像 素 为 单 位 )
client_control_mode 如 果 客 户 端 处 于 控 制 模 式 则 为 1
client_created 客 户 端 创 建 时 间
client_discarded 客 户 端 落 后 时 丢 弃 的 字 节
client_flags 客 户 端 标 志 列 表
client_height 客 户 端 高 度
client_key_table 当 前 快 捷 键 表
client_last_session 客 户 端 上 次 会 话 的 名 称
client_name 客 户 端 名 称
client_pid 客 户 端 进 程 代 号
client_prefix 如 果 按 下 了 前 缀 键 则 为 1
client_readonly 如 果 客 户 端 只 读 则 为 1
client_session 客 户 端 会 话 的 名 称
client_termfeatures 客 户 端 的 终 端 功 能 ( 如 果 有 )
client_termname 客 户 端 终 端 名 称
client_termtype 客 户 端 的 终 端 类 型 ( 如 果 可 用 )
client_tty 客 户 端 的 伪 终 端
client_uid 客 户 端 进 程 的 用 户 代 号
client_user 客 户 端 进 程 的 用 户
client_utf8 如 果 客 户 端 支 持 UTF-8 则 为 1
client_width 客 户 端 宽 度
client_written 写 入 客 户 端 的 字 节
command 正 在 使 用 的 命 令 的 名 称 ( 如 果 有 )
command_list_alias 列 出 命 令 时 的 命 令 别 名
command_list_name 列 出 命 令 时 的 命 令 名 称
command_list_usage 列 出 命 令 时 的 命 令 用 法
config_files 加 载 的 配 置 文 件 列 表
copy_cursor_line 复 制 模 式 下 光 标 所 在 的 行
copy_cursor_word 复 制 模 式 下 光 标 下 的 单 词
copy_cursor_x 复 制 模 式 下 的 光 标 X 位 置
copy_cursor_y 复 制 模 式 下 的 光 标 Y 位 置
current_file 当 前 配 置 文 件
cursor_character 窗 格 中 光 标 处 的 字 符
cursor_flag 窗 格 光 标 标 志
cursor_x 光 标 在 窗 格 中 的 X 位 置
cursor_y 光 标 在 窗 格 中 的 Y 位 置
history_bytes 窗 口 历 史 记 录 中 的 字 节 数
history_limit 最 大 窗 口 历 史 记 录 行
history_size 历 史 行 的 大 小
hook 运 行 钩 子 的 名 称 ( 如 果 有 )
hook_client 运 行 挂 钩 的 客 户 端 的 名 称 ( 如 果 有 )
hook_pane 运 行 挂 钩 的 窗 格 代 号 ( 如 果 有 )
hook_session 运 行 挂 钩 的 会 话 代 号 ( 如 果 有 )
hook_session_name 运 行 钩 子 的 会 话 的 名 称 ( 如 果 有 )
hook_window 运 行 挂 钩 的 窗 口 的 ID( 如 果 有 )
hook_window_name 运 行 钩 子 的 窗 口 的 名 称 ( 如 果 有 )
host #H 本 地 主 机 的 主 机 名
host_short #h 本 地 主 机 的 主 机 名 ( 无 域 名 )
insert_flag 窗 格 插 入 标 志
keypad_cursor_flag 窗 格 键 盘 光 标 标 志
keypad_flag 窗 格 键 盘 标 志
last_window_index 会 话 中 最 后 一 个 窗 口 的 索 引
line 列 表 中 的 行 号
mouse_all_flag 窗 格 鼠 标 所 有 标 志
mouse_any_flag 窗 格 鼠 标 任 何 标 志
mouse_button_flag 窗 格 鼠 标 按 钮 标 志
mouse_line 鼠 标 下 的 线 ( 如 果 有 )
mouse_sgr_flag 窗 格 鼠 标 SGR 标 志
mouse_standard_flag 窗 格 鼠 标 标 准 标 志
mouse_utf8_flag 窗 格 鼠 标 UTF-8 标 志
mouse_word 鼠 标 下 的 单 词 ( 如 果 有 )
mouse_x 鼠 标 X 位 置 ( 如 果 有 )
mouse_y 鼠 标 Y 位 置 ( 如 果 有 )
next_session_id 下 一 个 新 会 话 的 唯 一 会 话 代 号
origin_flag 窗 格 起 源 标 志
pane_active 如 果 活 跃 窗 格 则 为 1
pane_at_bottom 如 果 窗 格 位 于 窗 口 底 部 则 为 1
pane_at_left 如 果 窗 格 在 窗 口 的 左 侧 则 为 1
pane_at_right 如 果 窗 格 在 窗 口 的 右 侧 则 为 1
pane_at_top 如 果 窗 格 在 窗 口 的 顶 部 则 为 1
pane_bg 窗 格 背 景 颜 色
pane_bottom 窗 格 底 部
pane_current_command 当 前 命 令 ( 如 果 可 用 )
pane_current_path 当 前 路 径 ( 如 果 可 用 )
pane_dead 如 果 窗 格 死 了 则 为 1
pane_dead_signal 死 窗 格 中 进 程 的 退 出 信 号
pane_dead_status 死 窗 格 中 进 程 的 退 出 状 态
pane_dead_time 死 窗 格 中 进 程 的 退 出 时 间
pane_fg 窗 格 前 景 色
pane_format 如 果 格 式 用 于 窗 格 则 为 1
pane_height 窗 格 高 度
pane_id #D 唯 一 窗 格 代 号
pane_in_mode 如 果 窗 格 处 于 某 种 模 式 则 为 1
pane_index #P 窗 格 索 引
pane_input_off 如 果 禁 用 窗 格 输 入 则 为 1
pane_last 如 果 最 后 一 个 窗 格 则 为 1
pane_left 窗 格 左 侧
pane_marked 如 果 这 是 标 记 的 窗 格 则 为 1
pane_marked_set 如 果 设 置 了 标 记 的 窗 格 则 为 1
pane_mode 窗 格 模 式 的 名 称 ( 如 果 有 )
pane_path 窗 格 的 路 径 ( 可 以 由 应 用 程 序 设 置 )
pane_pid 窗 格 中 第 一 个 进 程 的 代 号
pane_pipe 如 果 窗 格 正 在 被 管 道 传 输 则 为 1
pane_right 窗 格 右 侧
pane_search_string 复 制 模 式 下 的 最 后 搜 索 字 符 串
pane_start_command 窗 格 开 始 命 令
pane_start_path 窗 格 开 始 路 径
pane_synchronized 如 果 窗 格 同 步 则 为 1
pane_tabs 窗 格 选 项 卡 位 置
pane_title #T 窗 格 的 标 题 ( 可 以 由 应 用 程 序 设 置 )
pane_top 窗 格 顶 部
pane_tty 窗 格 的 伪 终 端
pane_width 窗 格 的 宽 度
pid 服 务 器 进 程 代 号
rectangle_toggle 如 果 矩 形 选 择 被 激 活 则 为 1
scroll_position 复 制 模 式 下 的 滚 动 位 置
scroll_region_lower 窗 格 中 滚 动 区 域 的 底 部
scroll_region_upper 窗 格 中 滚 动 区 域 的 顶 部
search_match 搜 索 匹 配 项 ( 如 果 有 )
search_present 如 果 搜 索 以 复 制 模 式 开 始 则 为 1
selection_active 如 果 选 择 以 复 制 模 式 开 始 并 随 光 标 变 化 则 为 1
selection_end_x 选 择 结 束 的 X 位 置
selection_end_y 选 择 结 束 的 Y 位 置
selection_present 如 果 选 择 以 复 制 模 式 开 始 则 为 1
selection_start_x 选 择 开 始 的 X 位 置
selection_start_y 选 择 开 始 的 Y 位 置
session_activity 上 次 活 动 的 会 话 时 间
session_alerts 带 有 警 报 的 窗 口 索 引 列 表
session_attached 会 话 附 加 到 客 户 端 数 量
session_attached_list 会 话 被 附 加 到 的 客 户 端 列 表
session_created 创 建 的 时 间 会 话
session_format 如 果 格 式 用 于 会 话 则 为 1
session_group 会 话 组 名 称
session_group_attached 组 中 的 会 话 被 附 加 到 的 客 户 端 数 量
session_group_attached_list 组 中 的 会 话 被 附 加 到 的 客 户 端 列 表
session_group_list 组 中 会 话 列 表
session_group_many_attached 如 果 多 个 客 户 端 附 加 到 组 中 的 会 话 则 为 1
session_group_size 会 话 组 的 大 小
session_grouped 如 果 会 话 在 一 个 组 中 则 为 1
session_id 唯 一 会 话 代 号
session_last_attached 上 次 连 接 的 时 间 会 话
session_many_attached 如 果 连 接 了 多 个 客 户 端 则 为 1
session_marked 如 果 此 会 话 包 含 标 记 的 窗 格 则 为 1
session_name #S 会 话 名 称
session_path 会 话 的 工 作 目 录
session_stack 按 最 近 顺 序 排 列 的 窗 口 索 引
session_windows 会 话 中 的 窗 口 数
socket_path 服 务 器 套 接 字 路 径
start_time 服 务 器 启 动 时 间
uid 服 务 器 用 户 代 号
user 服 务 器 用 户
version 服 务 器 版 本
window_active 如 果 窗 口 活 跃 则 为 1
window_active_clients 查 看 此 窗 口 的 客 户 数 量
window_active_clients_list 查 看 此 窗 口 的 客 户 列 表
window_active_sessions 此 窗 口 处 于 活 动 状 态 的 会 话 数
window_active_sessions_list 此 窗 口 处 于 活 动 状 态 的 会 话 列 表
window_activity 窗 口 上 次 活 动 的 时 间
window_activity_flag 如 果 窗 口 有 活 动 则 为 1
window_bell_flag 如 果 窗 口 有 响 铃 则 为 1
window_bigger 如 果 窗 口 大 于 客 户 端 则 为 1
window_cell_height 每 个 单 元 格 的 高 度 ( 以 像 素 为 单 位 )
window_cell_width 每 个 单 元 格 的 宽 度 ( 以 像 素 为 单 位 )
window_end_flag 如 果 窗 口 具 有 最 高 索 引 则 为 1
window_flags #F 带 有 # 转 义 为 ## 的 窗 口 标 志
window_format 如 果 格 式 用 于 一 个 窗 口 则 为 1
window_height 窗 口 高 度
window_id 唯 一 窗 口 标 识
window_index #I 窗 口 索 引
window_last_flag 如 果 窗 口 是 最 后 使 用 的 则 为 1
window_layout 窗 口 布 局 描 述 , 忽 略 缩 放 的 窗 口 窗 格
window_linked 如 果 窗 口 跨 会 话 链 接 则 为 1
window_linked_sessions 此 窗 口 链 接 到 的 会 话 数
window_linked_sessions_list 此 窗 口 链 接 到 的 会 话 列 表
window_marked_flag 如 果 窗 口 包 含 标 记 的 窗 格 则 为 1
window_name #W 窗 口 名 称
window_offset_x 如 果 大 于 客 户 端 , 则 偏 移 X 到 窗 口
window_offset_y 如 果 大 于 客 户 , 则 偏 移 Y 到 窗 口 中
window_panes 窗 口 中 的 窗 格 数
window_raw_flags 没 有 逃 脱 的 窗 口 标 志
window_silence_flag 如 果 窗 口 有 静 音 警 报 为 1
window_stack_index 会 话 在 最 新 堆 栈 中 的 索 引
window_start_flag 如 果 窗 口 具 有 最 低 索 引 为 1
window_visible_layout 窗 口 布 局 描 述 , 尊 重 缩 放 的 窗 口 窗 格
window_width 窗 口 宽 度
window_zoomed_flag 如 果 窗 口 被 缩 放 为 1
wrap_flag 窗 格 换 行 标 志

样 式

tmux 提 供 了 各 种 选 项 , 以 指 定 界 面 各 个 方 面 的 颜 色 和 属 性 , 例 如 状 态 行 的 status-style 。 此 外 , 可 以 通 过 将 嵌 入 式 样 式 包 含 在 格 式 选 项 中 ( 如 status-left ) , 使 用 ’#[’ 和 ’]’ 括 起 来 来 指 定 嵌 入 式 样 式 。

一 个 样 式 可 以 是 单 个 术 语 ’default’ , 用 于 指 定 默 认 样 式 ( 可 能 来 自 选 项 , 例 如 状 态 行 中 的 status-style ) , 或 由 以 下 内 容 组 成 的 空 格 或 逗 号 分 隔 的 列 表 :

fg=colour

设 置 前 景 颜 色 。 颜 色 可 以 是 以 下 之 一 : blackredgreenyellowbluemagentacyanwhite ; 如 果 支 持 , 则 是 明 亮 的 变 体 , 例 如 brightredbrightgreenbrightyellow ; 从 256 色 彩 集 中 的 colour0colour255default 表 示 默 认 颜 色 , terminal 表 示 终 端 的 默 认 颜 色 ; 或 者 是 十 六 进 制 RGB 字 符 串 , 例 如 ’#ffffff’ 。

bg=colour

设 置 背 景 颜 色 。

none

不 设 置 任 何 属 性 ( 关 闭 任 何 活 动 属 性 ) 。

acs, bright ( 或 bold ) 、 dimunderscoreblinkreversehiddenitalicsoverlinestrikethroughdouble-underscorecurly-underscoredotted-underscoredashed-underscore

设 置 一 个 属 性 。 任 何 属 性 都 可 以 以 ’no’ 作 为 前 缀 来 取 消 设 置 。 acs 是 终 端 的 备 用 字 符 集 。

align=left ( 或 noalign ) 、 align=centrealign=right

根 据 需 要 将 文 本 左 对 齐 、 居 中 或 右 对 齐 到 可 用 的 空 间 。

fill=colour

如 果 合 适 , 用 背 景 颜 色 填 充 可 用 空 间 。

list=on, list=focuslist=left-markerlist=right-markernolist

标 记 各 个 窗 口 列 表 组 件 在 status-format 选 项 中 的 位 置 : list=on 标 记 列 表 的 开 始 ; list=focus 是 应 该 保 持 焦 点 的 列 表 部 分 , 如 果 整 个 列 表 无 法 适 应 可 用 空 间 ( 通 常 是 当 前 窗 口 ) ; list=left-markerlist=right-marker 标 记 要 用 于 标 记 从 列 表 左 侧 或 右 侧 裁 剪 文 本 的 文 本 , 如 果 没 有 足 够 的 空 间 。

push-default, pop-default

将 当 前 的 颜 色 和 属 性 保 存 为 默 认 值 , 或 者 恢 复 到 以 前 的 默 认 值 。 push-default 影 响 任 何 后 续 使 用 default 术 语 的 操 作 , 直 到 出 现 pop-default 。 只 能 推 送 一 个 默 认 值 ( 每 个 push-default 替 换 以 前 保 存 的 默 认 值 ) 。

range=left, range=rightrange=window|Xnorange

标 记 status-format 选 项 中 的 范 围 。 range=leftrange=right 是 用 于 ’StatusLeft’ 和 ’StatusRight’ 鼠 标 键 的 文 本 。 range=window|X 是 传 递 给 ’Status’ 鼠 标 键 的 窗 口 范 围 , 其 中 ’X’ 是 一 个 窗 口 索 引 。

例 子 是 :

fg=yellow bold underscore blink
bg=black,fg=default,noreverse

名 称 和 标 题

tmux 区 分 名 称 和 标 题 。 窗 口 和 会 话 都 有 名 称 , 可 以 在 目 标 中 使 用 它 们 , 并 在 状 态 行 和 各 种 列 表 中 显 示 : 名 称 是 窗 口 或 会 话 的 tmux 标 识 符 。 只 有 窗 格 有 标 题 。 窗 格 的 标 题 通 常 由 运 行 在 窗 格 内 部 的 程 序 使 用 转 义 序 列 进 行 设 置 ( 就 像 设 置 X(7) 中 的 xterm(1) 窗 口 标 题 一 样 ) 。 窗 口 本 身 没 有 标 题 ——窗 口 的 标 题 是 其 活 动 窗 格 的 标 题 。 tmux 本 身 可 以 设 置 客 户 端 运 行 的 终 端 的 标 题 , 请 参 见 set-titles 选 项 。

会 话 的 名 称 使 用 new-sessionrename-session 命 令 来 设 置 。 窗 口 的 名 称 使 用 以 下 命 令 之 一 来 设 置 :

1.

命 令 参 数 ( 例 如 -n 用 于 new-windownew-session ) 。

2.

转 义 序 列 ( 如 果 已 启 用 allow-rename 选 项 ) :

$ printf ’\033kWINDOW_NAME\033\\’

3.

自 动 重 命 名 , 将 名 称 设 置 为 窗 口 活 动 窗 格 中 的 活 动 命 令 。 请 参 阅 automatic-rename 选 项 。

当 窗 格 首 次 创 建 时 , 其 标 题 是 主 机 名 。 可 以 通 过 标 题 设 置 转 义 序 列 来 设 置 窗 格 的 标 题 , 例 如 :

$ printf ’\033]2;My Title\033\\’

也 可 以 使 用 select-pane -T 命 令 进 行 修 改 。

全 局 和 会 话 环 境

当 服 务 器 启 动 时 , tmux 将 环 境 复 制 到 global environment 中 ; 此 外 , 每 个 会 话 都 有 自 己 的 session environment 。 创 建 窗 口 时 , 会 合 并 会 话 和 全 局 环 境 。 如 果 变 量 在 两 个 环 境 中 都 存 在 , 则 使 用 会 话 环 境 中 的 值 。 结 果 是 传 递 给 新 进 程 的 初 始 环 境 。

当 创 建 新 会 话 或 重 新 附 加 旧 会 话 时 , 可 以 使 用 update-environment 会 话 选 项 从 客 户 端 更 新 会 话 环 境 。 tmux 还 使 用 一 些 内 部 信 息 初 始 化 TMUX 变 量 , 以 允 许 从 内 部 执 行 命 令 , 并 使 用 正 确 的 ’screen’ 终 端 设 置 初 始 化 TERM 变 量 。

会 话 和 全 局 环 境 中 的 变 量 都 可 以 标 记 为 隐 藏 。 隐 藏 变 量 不 会 传 递 到 新 进 程 的 环 境 中 , 而 是 只 能 被 tmux 自 身 使 用 ( 例 如 在 格 式 中 , 参 见 FORMATS 部 分 ) 。

改 变 和 查 看 环 境 的 命 令 是 :

set-environment [-Fhgru] [-t 目 标 会 话 ] 名 称 [ ]

(别 名 : Ic setenv)

设 置 或 取 消 设 置 环 境 变 量 。 如 果 使 用 了 -g , 则 更 改 将 在 全 局 环 境 中 进 行 ; 否 则 , 它 将 应 用 于 target-session 的 会 话 环 境 。 如 果 存 在 -F , 则 value 将 作 为 格 式 进 行 展 开 。 -u 标 志 取 消 设 置 变 量 。 -r 表 示 在 启 动 新 进 程 之 前 从 环 境 中 删 除 变 量 。 -h 将 变 量 标 记 为 隐 藏 。

show-environment [-hgs] [-t 目 标 会 话 ] [变 量 ]

(别 名 : Ic showenv)

显 示 目 标 会 话 的 环 境 或 使 用 -g 显 示 全 局 环 境 。 如 果 省 略 变 量 , 则 显 示 所 有 变 量 。 从 环 境 中 删 除 的 变 量 前 缀 为 ’-’ 。 如 果 使 用 了 -s , 则 输 出 格 式 化 为 一 组 Bourne shell 命 令 。 -h 显 示 隐 藏 变 量 ( 默 认 情 况 下 省 略 ) 。

状 态 行

tmux 包 括 一 个 可 选 的 状 态 行 , 它 显 示 在 每 个 终 端 的 底 部 行 。

默 认 情 况 下 , 状 态 行 已 启 用 , 高 度 为 一 行 ( 可 以 使 用 status 会 话 选 项 禁 用 或 使 其 变 为 多 行 ) , 从 左 到 右 包 含 : 当 前 会 话 的 名 称 ( 在 方 括 号 中 ) ; 窗 口 列 表 ; 活 动 窗 格 的 标 题 ( 在 双 引 号 中 ) ; 以 及 时 间 和 日 期 。

状 态 行 的 每 一 行 都 使 用 status-format 选 项 进 行 配 置 。 默 认 值 由 三 个 部 分 组 成 : 可 配 置 的 左 侧 和 右 侧 部 分 ( 可 以 包 含 动 态 内 容 , 如 时 间 或 来 自 shell 命 令 的 输 出 , 请 参 见 下 面 的 status-leftstatus-left-lengthstatus-rightstatus-right-length 选 项 ) , 以 及 中 央 的 窗 口 列 表 。 默 认 情 况 下 , 窗 口 列 表 按 数 字 升 序 显 示 当 前 会 话 中 存 在 的 窗 口 的 索 引 、 名 称 和 ( 如 果 有 ) 标 志 。 可 以 使 用 window-status-formatwindow-status-current-format 选 项 来 自 定 义 窗 口 列 表 。 标 志 是 附 加 在 窗 口 名 称 后 面 的 以 下 符 号 之 一 :

符 号 含 义
* 表 示 当 前 窗 口 。
- 标 记 最 后 一 个 窗 口 ( 先 前 选 择 的 ) 。
# 监 视 窗 口 活 动 并 检 测 到 活 动 。
! 窗 口 响 铃 受 到 监 控 , 窗 口 内 出 现 铃 响 。
~ 窗 口 在 监 视 器 静 默 间 隔 内 一 直 保 持 静 默 。
M 该 窗 口 包 含 标 记 的 窗 格 。
Z 窗 口 的 活 动 窗 格 被 缩 放 。

# 符 号 与 monitor-activity 窗 口 选 项 有 关 。 如 果 存 在 警 报 ( 铃 声 、 活 动 或 静 默 ) , 则 窗 口 名 称 以 反 色 打 印 。

可 以 配 置 状 态 行 的 颜 色 和 属 性 , 使 用 status-style 会 话 选 项 配 置 整 个 状 态 行 , 使 用 window-status-style 窗 口 选 项 配 置 各 个 窗 口 。

如 果 状 态 行 发 生 了 更 改 , 状 态 行 会 自 动 在 一 定 时 间 间 隔 内 进 行 刷 新 , 可 以 使 用 status-interval 会 话 选 项 控 制 刷 新 间 隔 。

与 状 态 行 相 关 的 命 令 如 下 :

clear-prompt-history [-T 提 示 类 型 ]

(别 名 : Ic clearphist)

清 除 提 示 类 型 为 提 示 类 型 的 提 示 历 史 记 录 。 如 果 省 略 了 -T , 则 清 除 所 有 类 型 的 历 史 记 录 。 有 关 提 示 类 型 可 能 的 值 , 请 参 见 command-prompt

command-prompt [-1bFikN] [-I 输 入 ] [-p 提 示 ] [-t 目 标 客 户 端 ] [-T 提 示 类 型 ] [模 板 ]

在 客 户 端 中 打 开 命 令 提 示 符 。 这 可 以 从 tmux 内 部 用 于 交 互 式 执 行 命 令 。

如 果 指 定 了 template , 则 它 将 用 作 命 令 。 如 果 使 用 了 -F , 则 template 将 作 为 格 式 展 开 。

如 果 存 在 , -I 是 每 个 提 示 的 初 始 文 本 的 逗 号 分 隔 列 表 。 如 果 给 出 了 -p , 则 prompts 是 按 顺 序 显 示 的 逗 号 分 隔 的 提 示 列 表 ; 否 则 , 将 显 示 单 个 提 示 , 如 果 存 在 template , 则 构 造 自 它 , 否 则 为 ’:’ 。

在 执 行 命 令 之 前 , 字 符 串 ’%%’ 的 第 一 次 出 现 和 所 有 ’%1’ 的 出 现 都 将 替 换 为 第 一 个 提 示 的 响 应 , 所 有 ’%2’ 都 将 替 换 为 第 二 个 提 示 的 响 应 , 以 此 类 推 进 行 更 多 提 示 。 最 多 可 以 替 换 九 个 提 示 响 应 , 从 ’%1’ 到 ’%9’ 。 ’%%%’ 类 似 于 ’%%’ , 但 任 何 引 号 都 会 被 转 义 。

-1 使 提 示 仅 接 受 一 个 按 键 , 此 时 输 入 结 果 为 单 个 字 符 。 -k 类 似 于 -1 , 但 按 键 被 转 换 为 键 名 。 -N 使 提 示 仅 接 受 数 字 按 键 。 -i 在 每 次 提 示 输 入 更 改 时 执 行 命 令 , 而 不 是 在 用 户 退 出 命 令 提 示 符 时 执 行 。

-T tells tmux the prompt type. This affects what completions are offered when Tab is pressed. Available types are: ’command’, ’search’, ’target’ and ’window-target’.

-T 告 诉 tmux 提 示 类 型 。 这 会 影 响 按 下 Tab 时 提 供 的 自 动 补 全 。 可 用 的 类 型 包 括 : ’command’ 、 ’search’ 、 ’target’ 和 ’window-target’ 。

功 能 vi emacs
取 消 命 令 提 示 q Escape
从 光 标 处 删 除 到 单 词 开 头 C-w
删 除 整 个 命 令 d C-u
从 光 标 处 删 除 到 结 尾 D C-k
执 行 命 令 Enter Enter
从 历 史 中 获 取 下 一 个 命 令 Down
从 历 史 中 获 取 上 一 个 命 令 Up
插 入 顶 部 粘 贴 缓 冲 区 p C-y
寻 找 补 全 Tab Tab
向 左 移 动 光 标 h Left
向 右 移 动 光 标 l Right
移 动 光 标 到 结 尾 $ C-e
将 光 标 移 动 到 下 一 个 单 词 w M-f
将 光 标 移 动 到 上 一 个 单 词 b M-b
移 动 光 标 到 开 始 0 C-a
转 置 字 符 C-t

使 用 -b , 提 示 显 示 在 后 台 , 并 且 调 用 客 户 端 在 其 被 解 除 之 前 不 会 退 出 。

confirm-before [-by] [-c 确 认 键 ] [-p 提 示 ] [-t 目 标 客 户 端 ] 命 令

(别 名 : Ic confirm)

在 执 行 命 令 之 前 询 问 确 认 。 如 果 给 出 了 -p , 则 提 示 是 要 显 示 的 提 示 ; 否 则 , 将 从 命 令 构 造 提 示 。 它 可 以 包 含 status-left 选 项 支 持 的 特 殊 字 符 序 列 。 使 用 -b , 提 示 显 示 在 后 台 , 并 且 调 用 客 户 端 在 其 被 解 除 之 前 不 会 退 出 。

display-menu [-O] [-c 目 标 客 户 端 ] [-t 目 标 窗 格 ] [-S 起 始 选 择 ] [-T 标 题 ] [-x 位 置 ] [-y 位 置 ] 名 称 快 捷 键 命 令 [参 数 ...]

(别 名 : Ic menu)

目 标 客 户 端 上 显 示 菜 单 。 目 标 窗 格 为 从 菜 单 运 行 的 任 何 命 令 指 定 目 标 。

菜 单 作 为 一 系 列 参 数 传 递 : 首 先 是 菜 单 项 名 称 , 其 次 是 快 捷 键 ( 如 果 没 有 则 为 空 ) , 第 三 个 是 在 选 择 菜 单 项 时 要 运 行 的 命 令 。 名 称 和 命 令 都 是 格 式 , 请 参 见 格 式样 式 部 分 。 如 果 名 称 以 连 字 符 ( -) 开 头 , 则 禁 用 该 项 目 ( 显 示 为 灰 暗 ) , 不 能 选 择 。 名 称 可 以 为 空 以 用 作 分 隔 线 , 在 这 种 情 况 下 , 键 和 命 令 都 应 省 略 。

-T 是 菜 单 标 题 的 格 式 ( 请 参 阅 格 式 ) 。

-x-y 给 出 菜 单 的 位 置 。 “都 行 ”可 以 是 行 号 或 列 号 , 或 以 下 特 殊 值 之 一 :

值 符 号 含 义
C 都 行 终 端 中 心
R -x 终 端 右 侧
P 都 行 窗 格 左 下 角
M 都 行 鼠 标 位 置
W 都 行 状 态 行 上 的 窗 口 位 置
S -y 状 态 行 上 方 或 下 方 的 行

或 扩 展 的 格 式 , 包 括 以 下 附 加 变 量 :

变 量 名 替 换 为
popup_centre_x 以 客 户 端 为 中 心
popup_centre_y 以 客 户 端 为 中 心
popup_height 菜 单 或 弹 出 窗 口 的 高 度
popup_mouse_bottom 鼠 标 底 部
popup_mouse_centre_x 鼠 标 水 平 中 心
popup_mouse_centre_y 鼠 标 垂 直 中 心
popup_mouse_top 鼠 标 顶 部
popup_mouse_x 鼠 标 X 位 置
popup_mouse_y 鼠 标 Y 位 置
popup_pane_bottom 窗 格 底 部
popup_pane_left 窗 格 左 边
popup_pane_right 窗 格 右 边
popup_pane_top 窗 格 顶 部
popup_status_line_y 高 于 或 低 于 状 态 行
popup_width 菜 单 或 弹 出 窗 口 的 宽 度
popup_window_status_line_x 在 状 态 行 的 窗 口 位 置
popup_window_status_line_y 在 显 示 窗 口 的 状 态 行

每 个 菜 单 都 由 项 目 和 括 号 中 显 示 的 键 快 捷 方 式 组 成 。 如 果 菜 单 太 大 而 无 法 适 合 终 端 , 则 不 会 显 示 。 按 下 键 快 捷 方 式 选 择 相 应 的 项 目 。 如 果 启 用 了 鼠 标 , 并 且 从 鼠 标 键 绑 定 打 开 了 菜 单 , 则 选 择 一 个 项 目 后 释 放 鼠 标 按 钮 选 择 该 项 目 , 而 不 选 择 项 目 释 放 鼠 标 按 钮 将 关 闭 菜 单 。 -O 更 改 此 行 为 , 使 得 当 释 放 鼠 标 按 钮 而 没 有 选 择 项 目 时 , 菜 单 不 关 闭 , 必 须 单 击 鼠 标 按 钮 才 能 选 择 项 目 。

以 下 键 也 可 用 :

快 捷 键 功 能
Enter 选 择 所 选 项 目
Up 选 择 上 一 项
Down 选 择 下 一 项
q 退 出 菜 单

display-message [-aIlNpv] [-c 目 标 客 户 端 ] [-d 延 迟 ] [-t 目 标 窗 格 ] [消 息 ]

(别 名 : Ic display)

显 示 一 条 消 息 。 如 果 给 出 了 -p , 则 输 出 将 打 印 到 标 准 输 出 中 , 否 则 将 在 目 标 客 户 端 状 态 行 中 显 示 , 最 多 延 迟 延 迟 毫 秒 。 如 果 未 给 出 延 迟 , 则 使 用 显 示 时 间 选 项 ; 延 迟 为 零 等 待 按 键 。 ’N’ 忽 略 按 键 并 仅 在 延 迟 到 期 后 关 闭 。 消 息 的 格 式 在 格 式 部 分 中 描 述 ; 如 果 给 出 了 -t , 则 从 目 标 窗 格 中 获 取 信 息 , 否 则 从 活 动 面 板 中 获 取 。

-v 在 解 析 格 式 时 打 印 详 细 日 志 , -a 列 出 格 式 变 量 及 其 值 。

-I 将 从 标 准 输 入 读 取 的 任 何 输 入 转 发 到 由 target-pane 指 定 的 空 面 板 。

display-popup [-BCE] [-b 边 界 线 ] [-c 目 标 客 户 端 ] [-d 起 始 目 录 ] [-e 环 境 ] [-h 高 度 ] [-s 样 式 ] [-S 边 框 样 式 ] [-t 目 标 窗 格 ] [-T 标 题 ] [-w 宽 度 ] [-x 位 置 ] [-y 位 置 ] [外 壳 命 令 ]

(别 名 : Ic popup)

目 标 客 户 端 上 显 示 运 行 外 壳 命 令 的 弹 出 窗 口 。 弹 出 窗 口 是 绘 制 在 任 何 面 板 上 方 的 矩 形 框 。 当 弹 出 窗 口 出 现 时 , 面 板 不 会 更 新 。

-E外 壳 命 令 退 出 时 自 动 关 闭 弹 出 窗 口 。 两 个 -E 仅 在 外 壳 命 令 成 功 退 出 时 关 闭 弹 出 窗 口 。

-x-y 给 出 弹 出 窗 口 的 位 置 , 它 们 的 含 义 与 display-menu 命 令 相 同 。 -w-h 给 出 宽 度 和 高 度 - 两 者 都 可 以 是 百 分 比 ( 后 跟 ’%’) 。 如 果 省 略 , 则 使 用 终 端 大 小 的 一 半 。

-B 不 会 用 边 框 包 围 弹 出 窗 口 。

-b 设 置 弹 出 窗 口 的 边 框 线 类 型 。 当 指 定 了 -B 时 , -b 选 项 将 被 忽 略 。 有 关 边 界 线 的 可 能 值 , 请 参 见 popup-border-lines

-s 设 置 弹 出 窗 口 的 样 式 , -s 设 置 弹 出 窗 口 边 框 的 样 式 。 有 关 如 何 指 定 样 式 , 请 参 阅 样 式 章 节 。

-e 的 格 式 为 ’变 量 =值 ’ , 它 为 弹 出 窗 口 设 置 一 个 环 境 变 量 ; 可 以 多 次 指 定 。

-T 是 弹 出 标 题 的 格 式 ( 请 参 阅 格 式 ) 。

-c 标 志 关 闭 客 户 端 上 的 任 何 弹 出 窗 口 。

show-prompt-history [-T 提 示 类 型 ]

(别 名 : Ic showphist)

显 示 提 示 类 型 提 示 类 型 的 状 态 提 示 符 历 史 记 录 。 如 果 省 略 了 -T , 则 显 示 所 有 类 型 的 历 史 记 录 。 有 关 提 示 类 型 的 可 能 值 , 请 参 见 command-prompt

缓 冲 区

tmux 维 护 一 组 命 名 的 粘 贴 缓 冲 区 。 每 个 缓 冲 区 可 以 是 显 式 或 自 动 命 名 的 。 当 使 用 set-bufferload-buffer 命 令 创 建 缓 冲 区 时 , 或 使 用 set-buffer -n 将 自 动 命 名 缓 冲 区 重 命 名 时 , 显 式 命 名 缓 冲 区 被 命 名 。 自 动 命 名 缓 冲 区 被 赋 予 类 似 ’buffer0001’ 、 ’buffer0002’ 等 名 称 。 当 达 到 buffer-limit 选 项 时 , 最 旧 的 自 动 命 名 缓 冲 区 将 被 删 除 。 显 式 命 名 缓 冲 区 不 受 buffer-limit 的 限 制 , 可 以 使 用 delete-buffer 命 令 删 除 。

可 以 使 用 copy-modeset-bufferload-buffer 命 令 添 加 缓 冲 区 , 并 使 用 paste-buffer 命 令 将 其 粘 贴 到 窗 口 中 。 如 果 使 用 缓 冲 区 命 令 但 没 有 指 定 缓 冲 区 , 则 假 定 最 近 添 加 的 自 动 命 名 缓 冲 区 。

每 个 窗 口 还 维 护 一 个 可 配 置 的 历 史 记 录 缓 冲 区 。 默 认 情 况 下 , 保 留 多 达 2000 行 ; 可 以 使 用 history-limit 选 项 ( 参 见 上 面 的 set-option 命 令 ) 进 行 更 改 。

缓 冲 区 命 令 如 下 :

将 窗 格 置 于 缓 冲 区 模 式 , 可 以 从 列 表 中 交 互 地 选 择 缓 冲 区 。 每 个 缓 冲 区 显 示 在 一 行 上 , 左 侧 用 括 号 显 示 快 捷 键 , 可 立 即 选 择 , 或 使 用 下 面 的 按 键 浏 览 列 表 并 选 择 或 以 其 他 方 式 操 作 项 目 。 -Z 可 以 缩 放 窗 格 。 在 缓 冲 区 模 式 下 , 可 以 使 用 以 下 按 键 : choose-buffer [-NZr] [-F format] [-f filter] [-K key-format] [-O sort-order] [-t target-pane] [template]

快 捷 键 功 能
Enter 粘 贴 选 定 的 缓 冲 区
Up 选 择 上 一 个 缓 冲 区
Down 选 择 下 一 个 缓 冲 区
C-s 按 名 称 或 内 容 搜 索
n 重 复 上 次 搜 索
t 如 果 缓 冲 区 被 标 记 则 切 换
T 标 记 无 缓 冲 区
C-t 标 记 所 有 缓 冲 区
p 粘 贴 选 定 的 缓 冲 区
P 粘 贴 标 记 缓 冲 区
d 删 除 选 定 的 缓 冲 区
D 删 除 标 记 的 缓 冲 区
e 在 编 辑 器 中 打 开 缓 冲 区
f 输 入 过 滤 项 目 的 格 式
O 更 改 排 序 字 段
r 反 向 排 序
v 切 换 预 览
q 退 出 模 式

选 择 缓 冲 区 后 , 模 板 中 的 ’%%’ 将 被 缓 冲 区 名 称 替 换 , 并 将 结 果 作 为 命 令 执 行 。 如 果 未 指 定 模 板 , 则 使 用 “paste-buffer -b ’%%’”。

-O 指 定 初 始 排 序 字 段 : 可 以 是 ’time’ 、 ’name’ 或 ’size’ 中 的 一 个 。 -r 反 转 排 序 顺 序 。 -f 指 定 初 始 筛 选 器 : 筛 选 器 是 一 个 格 式 - 如 果 它 的 结 果 为 零 , 则 列 表 中 的 项 目 不 显 示 , 否 则 显 示 。 如 果 筛 选 器 会 导 致 空 列 表 , 则 忽 略 它 。 -F 指 定 列 表 中 每 个 项 目 的 格 式 , -K 指 定 每 个 快 捷 键 的 格 式 ; 两 者 都 对 每 行 进 行 一 次 求 值 。 -N 在 不 显 示 预 览 的 情 况 下 启 动 。 此 命 令 仅 在 至 少 有 一 个 客 户 端 连 接 时 才 有 效 。

clock-mode [-t 目 标 窗 格 ]

(别 名 : Ic clearhist)

删 除 并 释 放 指 定 窗 格 的 历 史 记 录 。 -H 还 会 删 除 所 有 超 链 接 。

delete-buffer [-b 缓 冲 区 名 称 ]

(别 名 : Ic deleteb)

删 除 名 为 缓 冲 区 名 称 的 缓 冲 区 , 如 果 未 指 定 , 则 删 除 最 近 添 加 的 自 动 命 名 的 缓 冲 区 。

list-buffers [-F 格 式 ] [-f 过 滤 器 ]

(别 名 : Ic lsb)

列 出 全 局 缓 冲 区 。 -F 指 定 每 行 的 格 式 , -f 指 定 一 个 筛 选 器 。 只 显 示 筛 选 器 为 真 的 缓 冲 区 。 请 参 见 格 式 部 分 。

load-buffer [-w] [-b 缓 冲 区 名 称 ] [-t 目 标 客 户 端 ] 路 径

(别 名 : Ic loadb)

路 径 中 加 载 指 定 粘 贴 缓 冲 区 的 内 容 。 如 果 给 出 了 -w , 则 如 果 可 能 , 使 用 xterm(1) 转 义 序 列 将 缓 冲 区 发 送 到 目 标 客 户 端 的 剪 贴 板 中 。

paste-buffer [-dpr] [-b 缓 冲 区 名 称 ] [-s 分 隔 符 ] [-t 目 标 窗 格 ]

(别 名 : Ic pasteb)

Insert the contents of a paste buffer into the specified pane. If not specified, paste into the current one. With -d, also delete the paste buffer. When output, any linefeed (LF) characters in the paste buffer are replaced with a separator, by default carriage return (CR). A custom separator may be specified using the -s flag. The -r flag means to do no replacement (equivalent to a separator of LF). If -p is specified, paste bracket control codes are inserted around the buffer if the application has requested bracketed paste mode.

save-buffer [-a] [-b 缓 冲 区 名 称 ] 路 径

(别 名 : Ic saveb)

将 指 定 粘 贴 缓 冲 区 的 内 容 保 存 到 路 径-a 选 项 将 内 容 追 加 到 文 件 而 不 是 覆 盖 文 件 。

set-buffer [-aw] [-b 缓 冲 区 名 称 ] [-t 目 标 客 户 端 ] [-n 新 缓 冲 区 名 称 ] 数 据

(别 名 : Ic setb)

将 指 定 缓 冲 区 的 内 容 设 置 为 数 据 。 如 果 给 出 了 -w , 则 如 果 可 能 , 使 用 xterm(1) 转 义 序 列 将 缓 冲 区 发 送 到 目 标 客 户 端 的 剪 贴 板 中 。 -a 选 项 将 内 容 追 加 到 缓 冲 区 而 不 是 覆 盖 缓 冲 区 。 -n 选 项 将 缓 冲 区 重 命 名 为 新 缓 冲 区 名 称

show-buffer [-b 缓 冲 区 名 称 ]

(别 名 : Ic showb)

显 示 指 定 缓 冲 区 的 内 容 。

杂 项

杂 项 命 令 如 下 :

clock-mode [-t 目 标 窗 格 ]

显 示 一 个 大 时 钟 。

if-shell [-bF] [-t 目 标 窗 格 ] 外 壳 命 令 命 令 [命 令 ]

(别 名 : Ic if)

如 果 外 壳 命 令 ( 使 用 /bin/sh 运 行 ) 返 回 成 功 , 则 执 行 第 一 个 命 令 , 否 则 执 行 第 二 个 命 令 。 在 执 行 之 前 , 外 壳 命 令 将 使 用 格 式 部 分 中 指 定 的 规 则 进 行 扩 展 , 包 括 与 目 标 窗 格 相 关 的 规 则 。 使 用 -b 选 项 可 以 在 后 台 运 行 外 壳 命 令

如 果 给 出 了 -F , 则 不 执 行 外 壳 命 令 命 令 , 但 在 扩 展 格 式 后 , 如 果 不 为 空 且 不 为 零 , 则 认 为 命 令 成 功 。

lock-server

(别 名 : Ic lock)

通 过 运 行 由 lock-command 选 项 指 定 的 命 令 单 独 锁 定 每 个 客 户 端 。

run-shell [-bC] [-d 延 迟 ] [-t 目 标 窗 格 ] [外 壳 命 令 ]

(别 名 : run)

使 用 /bin/sh 或 ( 使 用 -C ) 在 后 台 执 行 外 壳 命 令 命 令 , 而 不 创 建 窗 口 。 在 执 行 之 前 , 外 壳 命 令 将 使 用 格 式 部 分 中 指 定 的 规 则 进 行 扩 展 。 使 用 -b 选 项 可 以 在 后 台 运 行 命 令 。 使 用 -d 选 项 可 以 在 启 动 命 令 之 前 等 待 延 迟 秒 。 如 果 未 使 用 -C 选 项 , 则 stdout 的 任 何 输 出 都 将 在 命 令 完 成 后 以 查 看 模 式 显 示 ( 在 由 -t 指 定 的 窗 格 中 , 如 果 省 略 则 为 当 前 窗 格 ) 。 如 果 命 令 失 败 , 则 还 会 显 示 退 出 状 态 。

wait-for [-L | -S | -U] 通 道

(别 名 : wait)

如 果 没 有 选 项 使 用 , 则 防 止 客 户 端 退 出 , 直 到 使 用 相 同 通 道 的 wait-for -S 命 令 唤 醒 它 。 如 果 使 用 了 -L , 则 锁 定 该 通 道 , 任 何 尝 试 锁 定 相 同 通 道 的 客 户 端 都 必 须 等 待 , 直 到 使 用 wait-for -U 命 令 解 锁 通 道 。

退 出 消 息

tmux 客 户 端 分 离 时 , 它 会 打 印 一 条 消 息 。 这 可 能 是 以 下 之 一 :

分 离 ( 从 会 话 ...)

客 户 端 正 常 分 离 。

分 离 和 SIGHUP

客 户 端 被 分 离 并 且 其 父 进 程 发 送 了 SIGHUP 信 号 ( 例 如 使 用 detach-client -P 命 令 ) 。

丢 失 tty

客 户 端 的 tty(4) 或 pty(4) 被 意 外 销 毁 。

终 止

客 户 端 被 使 用 SIGTERM 信 号 杀 死 。

太 落 后 了

客 户 端 处 于 控 制 模 式 并 且 无 法 跟 上 来 自 tmux 的 数 据 。

退 出

服 务 器 在 没 有 会 话 时 退 出 。

服 务 器 退 出

当 服 务 器 接 收 到 SIGTERM 信 号 时 退 出 。

服 务 器 意 外 退 出

服 务 器 崩 溃 或 以 其 他 方 式 退 出 而 没 有 告 诉 客 户 端 原 因 。

终 端 信 息 扩 展

tmux 理 解 一 些 非 官 方 的 terminfo(5) 扩 展 。 通 常 不 需 要 手 动 设 置 这 些 扩 展 , 而 应 该 使 用 terminal-features 选 项 。

AX

告 诉 tmux 终 端 支 持 默 认 颜 色 的 现 有 扩 展 。

Bidi

告 诉 tmux 终 端 支 持 vte 双 向 文 本 扩 展 。

Cs, Cr

设 置 光 标 颜 色 。 第 一 个 命 令 带 有 一 个 字 符 串 参 数 , 用 于 设 置 颜 色 ; 第 二 个 命 令 不 带 参 数 , 用 于 恢 复 默 认 光 标 颜 色 。 如 果 设 置 了 颜 色 , 可 以 使 用 类 似 下 面 的 序 列 在 tmux 中 更 改 光 标 颜 色 :

$ printf ’\033]12;red\033\\’

颜 色 是 X(7) 颜 色 , 请 参 见 XParseColor(3) 。

Cmg, Clmg, Dsmg, Enmg

设 置 、 清 除 、 禁 用 或 启 用 DECSLRM 边 距 。 如 果 终 端 报 告 自 己 兼 容 VT420 , 则 会 自 动 设 置 这 些 选 项 。

Dsbp, Enbp

禁 用 和 启 用 括 号 粘 贴 。 如 果 存 在 XT 能 力 , 则 会 自 动 设 置 这 些 选 项 。

Dseks, Eneks

禁 用 和 启 用 扩 展 键 。

Dsfcs, Enfcs

禁 用 和 启 用 焦 点 报 告 。 如 果 存 在 XT 能 力 , 则 会 自 动 设 置 这 些 选 项 。

Rect

告 诉 tmux 终 端 支 持 矩 形 操 作 。

Smol

启 用 上 划 线 属 性 。

Smulx

设 置 带 样 式 的 下 划 线 。 单 个 参 数 可 以 是 以 下 之 一 : 0 表 示 没 有 下 划 线 , 1 表 示 普 通 下 划 线 , 2 表 示 双 下 划 线 , 3 表 示 卷 曲 下 划 线 , 4 表 示 点 下 划 线 和 5 表 示 虚 线 下 划 线 。

Setulc, ol

设 置 下 划 线 颜 色 或 重 置 为 默 认 值 。 参 数 是 (红 色 * 65536) + (绿 色 * 256) + 蓝 色 , 其 中 每 个 值 在 0 到 255 之 间 。

Ss, Se

设 置 或 重 置 光 标 样 式 。 如 果 设 置 了 , 可 以 使 用 此 类 序 列 将 光 标 更 改 为 下 划 线 :

$ printf ’\033[4 q’

如 果 未 设 置 Se , 则 使 用 带 有 参 数 0 的 Ss 重 置 光 标 样 式 。

Swd

设 置 工 作 目 录 通 知 的 开 头 序 列 。 使 用 标 准 的 fsl 能 力 终 止 序 列 。

Sync

开 始 ( 参 数 为 1) 或 结 束 ( 参 数 为 2) 同 步 更 新 。

Tc

指 示 终 端 支 持 ’direct colour’ RGB 转 义 序 列 ( 例 如 , \e[38;2;255;255;255m) 。

如 果 支 持 , 则 用 于 初 始 化 颜 色 转 义 序 列 ( 可 以 通 过 将 ’initc’ 和 ’ccc’ 能 力 添 加 到 tmux terminfo(5) 条 目 中 启 用 ) 。

这 相 当 于 RGB terminfo(5) 能 力 。

Ms

将 当 前 缓 冲 区 存 储 在 主 机 终 端 的 选 择 ( 剪 贴 板 ) 中 。 请 参 见 上 面 的 set-clipboard 选 项 和 xterm(1) 手 册 页 。

XT

这 是 一 个 现 有 的 扩 展 能 力 , tmux 使 用 它 来 表 示 终 端 支 持 xterm(1) 标 题 设 置 序 列 , 并 自 动 设 置 上 述 某 些 能 力 。

控 制 方 式

tmux 提 供 了 一 个 名 为 control mode 的 文 本 界 面 。 这 允 许 应 用 程 序 使 用 简 单 的 纯 文 本 协 议 与 tmux 通 信 。

在 控 制 模 式 下 , 客 户 端 在 标 准 输 入 上 发 送 以 换 行 符 结 尾 的 tmux 命 令 或 命 令 序 列 。 每 个 命 令 将 在 标 准 输 出 上 产 生 一 个 输 出 块 。 输 出 块 由 %begin 行 开 始 , 后 跟 输 出 ( 可 能 为 空 ) 。 输 出 块 以 %end%error 结 束 。 %begin 和 匹 配 的 %end%error 具 有 三 个 参 数 : 一 个 整 数 时 间 ( 从 纪 元 以 秒 为 单 位 ) , 命 令 编 号 和 标 志 ( 当 前 未 使 用 ) 。 例 如 :

%begin 1363006971 2 1
0: ksh* (1 panes) [80x24] [layout b25f,80x24,0,0,2] @2 (active)
%end 1363006971 2 1

refresh-client -c 命 令 可 用 于 在 控 制 模 式 下 设 置 客 户 端 的 大 小 。

在 控 制 模 式 下 , tmux 输 出 通 知 。 通 知 永 远 不 会 出 现 在 输 出 块 内 。

定 义 了 以 下 通 知 :

%client-detached 客 户 端

客 户 端 已 经 分 离 。

%client-session-changed 客 户 端 会 话 代 号 名 称

客 户 端 现 在 已 连 接 到 代 号 为 会 话 代 号 的 会 话 , 该 会 话 的 名 称 为 名 称

%continue 窗 格 代 号

在 暂 停 后 继 续 了 该 窗 格 (如 果 设 置 了 之 后 暂 停 标 志 , 请 参 见 refresh-client -A) 。

%exit [原 因 ]

tmux 客 户 端 立 即 退 出 , 可 能 是 因 为 它 未 连 接 到 任 何 会 话 或 发 生 了 错 误 。 如 果 存 在 , 原 因 描 述 客 户 端 退 出 的 原 因 。

%extended-output 窗 格 代 号 年 龄 ... :

当 设 置 了 之 后 暂 停 标 志 时 , %output 的 新 形 式 被 发 送 。 年 龄 是 tmux 在 发 送 输 出 之 前 缓 冲 输 出 的 时 间 ( 以 毫 秒 为 单 位 ) 。 在 单 个 ’:’ 之 前 的 任 何 后 续 参 数 都 是 未 来 使 用 的 , 应 该 被 忽 略 。

%layout-change 窗 口 代 号 窗 口 布 局 窗 口 可 见 布 局 窗 口 标 志

具 有 代 号 窗 口 代 号 的 窗 口 的 布 局 已 更 改 。 新 布 局 为 窗 口 布 局 。 窗 口 的 可 见 布 局 为 窗 口 可 见 布 局 , 窗 口 标 志 为 窗 口 标 志

%output 窗 格 代 号 值

一 个 窗 格 产 生 输 出 。 将 不 可 打 印 字 符 和 反 斜 杠 转 义 为 八 进 制 \xxx。

%pane-mode-changed 窗 格 代 号

代 号 为 窗 格 代 号 的 窗 格 已 更 改 模 式 。

%pause 窗 格 代 号

窗 格 已 暂 停 ( 如 果 设 置 了 pause-after 标 志 ) 。

%session-changed 会 话 代 号 姓 名

客 户 端 现 在 已 连 接 到 代 号 为 会 话 代 号 的 会 话 , 该 会 话 的 名 称 为 名 称

%session-renamed 姓 名

当 前 会 话 已 重 命 名 为 名 称

%session-window-changed 会 话 代 号 窗 口 代 号

代 号 为 会 话 代 号 的 会 话 将 其 活 动 窗 口 更 改 为 代 号 为 窗 口 代 号 的 窗 口 。

%sessions-changed

创 建 或 销 毁 了 一 个 会 话 。

%subscription-changed 名 称 会 话 代 号 窗 口 代 号 窗 口 索 引 窗 格 代 号 ... :

与 订 阅 名 称 相 关 联 的 格 式 的 值 已 更 改 为 value 。 请 参 见 refresh-client -B 。 在 pane-id 后 的 任 何 参 数 都 是 未 来 使 用 的 , 应 该 被 忽 略 。

%unlinked-window-add 窗 口 代 号

代 号 为 窗 口 代 号 的 窗 口 已 创 建 , 但 未 链 接 到 当 前 会 话 。

%unlinked-window-close 窗 口 代 号

未 链 接 到 当 前 会 话 的 代 号 为 窗 口 代 号 的 窗 口 已 关 闭 。

%unlinked-window-renamed 窗 口 代 号

未 链 接 到 当 前 会 话 的 代 号 为 窗 口 代 号 的 窗 口 已 被 重 命 名 。

%window-add 窗 口 代 号

代 号 为 窗 口 代 号 的 窗 口 链 接 到 当 前 会 话 。

%window-close 窗 口 代 号

代 号 为 窗 口 代 号 的 窗 口 关 闭 。

%window-pane-changed 窗 口 代 号 窗 格 代 号

窗 口 中 代 号 为 窗 口 代 号 的 活 动 窗 格 更 改 为 代 号 为 窗 格 代 号 的 窗 格 。

%window-renamed 窗 口 代 号 名 称

代 号 为 窗 口 代 号 的 窗 口 被 重 命 名 为 名 称

环 境

tmux 启 动 时 , 它 会 检 查 以 下 环 境 变 量 :

EDITOR

如 果 此 变 量 指 定 的 命 令 包 含 字 符 串 ’vi’ , 且 VISUAL 未 设 置 , 则 使 用 vi 风 格 的 键 绑 定 。 mode-keysstatus-keys 选 项 会 覆 盖 此 设 置 。

HOME

用 户 的 登 录 目 录 。 如 果 未 设 置 , 则 查 询 passwd(5) 数 据 库 。

LC_CTYPE

字 符 编 码 locale(1) 。 它 用 于 两 个 不 同 的 目 的 。 为 了 输 出 到 终 端 , 如 果 给 定 了 -u 选 项 或 LC_CTYPE 包 含 "UTF-8" 或 "UTF8" , 则 使 用 UTF-8。 否 则 , 只 写 入 ASCII 字 符 , 并 用 下 划 线 (’_’) 替 换 非 ASCII 字 符 。 对 于 输 入 , tmux 总 是 在 UTF-8 语 言 环 境 下 运 行 。 如 果 操 作 系 统 提 供 了 en_US.UTF-8, 那 么 就 使 用 它 , LC_CTYPE 对 于 输 入 会 被 忽 略 。 否 则 , LC_CTYPE 告 诉 tmux 当 前 系 统 中 UTF-8 语 言 环 境 的 名 称 。 如 果 由 LC_CTYPE 指 定 的 语 言 环 境 不 可 用 或 不 是 UTF-8 语 言 环 境 , tmux 将 会 退 出 并 显 示 错 误 信 息 。

LC_TIME

日 期 和 时 间 格 式 locale(1) 。 它 用 于 依 赖 于 语 言 环 境 的 strftime(3) 格 式 说 明 符 。

PWD

当 前 工 作 目 录 , 将 在 全 局 环 境 中 进 行 设 置 。 如 果 它 包 含 符 号 链 接 , 则 可 能 会 很 有 用 。 如 果 该 变 量 的 值 与 当 前 工 作 目 录 不 匹 配 , 则 会 忽 略 该 变 量 , 并 使 用 getcwd(3) 的 结 果 。

SHELL

新 窗 口 默 认 使 用 的 shell 的 绝 对 路 径 。 详 细 信 息 请 参 见 default-shell 选 项 。

TMUX_TMPDIR

包 含 服 务 器 套 接 字 目 录 的 父 目 录 。 详 细 信 息 请 参 见 -L 选 项 。

VISUAL

如 果 此 变 量 指 定 的 命 令 包 含 字 符 串 ’vi’ , 则 使 用 vi 风 格 的 键 绑 定 。 mode-keysstatus-keys 选 项 会 覆 盖 此 设 置 。

文 件
~/.tmux.conf
$XDG_CONFIG_HOME/tmux/tmux.conf
~/.config/tmux/tmux.conf

默 认 tmux 配 置 文 件 。

@SYSCONFDIR@/tmux.conf

系 统 范 围 的 配 置 文 件 。

示 例

要 创 建 一 个 运 行 vi(1) 的 新 tmux 会 话 , 请 执 行 以 下 操 作 :

$ tmux new-session vi

大 多 数 命 令 都 有 一 个 较 短 的 形 式 , 称 为 别 名 。 对 于 新 会 话 , 这 是 new

$ tmux new vi

或 者 , 接 受 命 令 的 最 短 明 确 形 式 。 如 果 有 多 个 选 项 , 则 会 列 出 :

$ tmux n
不 明 确 的 命 令 : n , 可 以 是 : new-session, new-window, next-window

在 活 动 会 话 中 , 可 以 通 过 键 入 ’C-b c’ (先 按 下 Ctrl 键 , 然 后 是 ’b’ 键 , 最 后 是 ’c’ 键 ) 来 创 建 一 个 新 窗 口 。

可 以 使 用 以 下 快 捷 键 导 航 窗 口 : ’C-b 0’ ( 选 择 窗 口 0) 、 ’C-b 1’ ( 选 择 窗 口 1) 等 ; ’C-b n’ 选 择 下 一 个 窗 口 ; ’C-b p’ 选 择 上 一 个 窗 口 。

会 话 可 以 使 用 ’C-b d’ ( 或 外 部 事 件 如 ssh(1) 断 开 连 接 ) 分 离 并 重 新 附 加 :

$ tmux attach-session

输 入 ’C-b ?’ 列 出 当 前 窗 口 的 当 前 键 绑 定 ; 可 以 使 用 上 下 箭 头 导 航 列 表 或 ’q’ 退 出 。

tmux 服 务 器 启 动 时 要 运 行 的 命 令 可 以 放 在 ~/.tmux.conf 配 置 文 件 中 。 常 见 的 示 例 包 括 :

更 改 默 认 前 缀 键 :

set-option -g prefix C-a
unbind-key C-b
bind-key C-a send-prefix

关 闭 状 态 行 或 更 改 其 颜 色 :

set-option -g status off
set-option -g status-style bg=blue

设 置 其 他 选 项 , 如 默 认 命 令 或 在 30分 钟 不 活 动 后 锁 定 :

set-option -g default-command "exec /bin/ksh"
set-option -g lock-after-time 1800

创 建 新 的 键 绑 定 :

bind-key b set-option status
bind-key / command-prompt "split-window ’exec man %%’"
bind-key S command-prompt "new-window -n %1 ’ssh %1’"

参 见

pty(4)

作 者

Nicholas Marriott <nicholas.marriott@gmail.com>

翻 译

<https://github.com/Freed-Wu/tmux-zh/issues>