Manpages

名 称

manpath - 格 式 化 /etc/manpath.config 文 件

描 述

manpath 配 置 文 件 是 手 册 页 工 具 程 序 用 来 在 运 行 时 访 问 用 户 的 manpath 的 。 它 指 示 了 哪 些 手 册 页 层 次 结 构 (manpath)应 视 为 系 统 层 次 结 构 , 并 向 它 们 分 配 用 于 保 存 cat 文 件 的 目 录 。 如 果 已 经 设 置 了 环 境 变 量 $MANPATH, /etc/manpath.config 中 包 含 的 信 息 不 会 覆 盖 它 。

搜 索 路 径

默 认 情 况 下 , man-db 检 查 用 户 的 $PATH。 对 每 个 找 到 的 path_element, 它 会 将 manpath_element 添 加 至 搜 索 路 径 。 如 果 对 于 一 个 给 定 的 path_element 在 配 置 文 件 中 不 存 在 对 应 的 MANPATH_MAP 行 , 则 它 将 添 加 path_element/../manpath_element/manpath_element/../share/manpath_element/share/man 这 些 路 径 中 所 有 存 在 的 目 录 至 搜 索 路 径 中 。 在 此 之 后 , 它 将 添 加 配 置 文 件 中 所 有 的 MANDATORY_MANPATH 条 目 至 搜 索 路 径 中 。 最 后 , 如 果 使 用 了 --systems 选 项 或 设 置 了 $SYSTEM 环 境 变 量 , 它 们 应 该 包 含 使 用 英 文 逗 号 或 冒 号 分 隔 的 操 作 系 统 名 称 的 列 表 。 它 将 作 为 模 板 , 并 再 一 次 扩 展 为 搜 索 路 径 以 访 问 其 它 操 作 系 统 的 手 册 页 : 对 于 每 一 个 系 统 名 称 , man-db 将 查 找 搜 索 路 径 下 给 定 条 目 为 名 称 的 子 目 录 , 并 在 其 存 在 的 情 况 下 将 其 添 加 到 最 终 的 搜 索 路 径 中 。 若 系 统 名 称 为 man, 则 将 使 用 通 常 的 、 不 带 子 目 录 的 搜 索 路 径 。 例 如 , 如 果 搜 索 路 径 原 先 为 /usr/share/man:/usr/local/man 且 $SYSTEM 被 设 置 为 newOS:man, 则 最 终 的 搜 索 路 径 将 为 /usr/share/man/newOS:/usr/share/man:/usr/local/man/newOS:/usr/local/man

$MANPATH 环 境 变 量 会 覆 盖 man-db 的 默 认 手 册 页 搜 索 路 径 。 大 部 分 用 户 不 应 该 需 要 对 此 进 行 设 置 。 其 语 法 类 似 $PATH 环 境 变 量 : 它 包 含 一 个 目 录 名 称 的 序 列 , 并 使 用 冒 号 进 行 分 隔 。 它 会 覆 盖 上 文 所 述 的 默 认 搜 索 路 径 。 如 果 $MANPATH 使 用 冒 号 开 头 , 则 默 认 搜 索 路 径 将 添 加 到 其 开 头 位 置 。 如 果 $MANPATH 使 用 冒 号 结 尾 , 则 默 认 搜 索 路 径 将 添 加 到 其 结 束 位 置 。 如 果 变 量 的 值 包 含 双 冒 号 ( ::) , 则 默 认 搜 索 路 径 将 插 入 到 两 个 冒 号 之 间 。

格 式

当 前 支 持 以 下 字 段 类 型 :

注 释 空 行 或 以

# 开 头 的 行 将 视 为 注 释 并 忽 略 。

MANDATORY_MANPATH manpath_element 这 种 形 式 的 行 指 定 每 个 自 动 生 成 的 $MANPATH 应 包 含 的 manpath。 它 通 常 包 含 /usr/man
MANPATH_MAP 
path_element manpath_element 这 种 形 式 的 行 将 设 置 $PATH 到 $MANPATH 的 映 射 。 对 于 在 用 户 $PATH 中 找 到 的 每 个 path_element, 会 将 manpath_element 添 加 到 $MANPATH
MANDB_MAP
manpath_element [ catpath_element ] 这 种 形 式 的 行 指 示 哪 些 manpath 视 为 系 统 manpath, 还 可 指 定 它 们 的 cat 文 件 保 存 在 哪 里 。 如 果 man 是 一 个 setuid 程 序 , 此 字 段 类 型 将 尤 为 重 要 , 因 为 (当 在 系 统 配 置 文 件 /etc/manpath.config 而 不 是 每 个 用 户 配 置 文 件 .manpath 中 时 )它 指 示 哪 些 手 册 页 层 次 结 构 作 为 setuid 用 户 访 问 , 哪 些 作 为 调 用 用 户 访 问 。 系 统 手 册 页 层 次 结 构 通 常 保 存 在 /usr 下 , 如 /usr/man, /usr/local/man/usr/X11R6/man。 如 果 来 自 某 个 特 定 manpath_element 的 cat 页 面 不 保 存 , 或 保 存 在 传 统 位 置 , 可 以 忽 略 catpath_element。 传 统 的 cat 保 存 位 置 无 法 处 理 只 读 方 式 挂 臷 的 手 册 页 层 次 结 构 , 因 此 (考 虑 到 这 种 情 况 ), 可 以 指 定 任 何 有 效 的 目 录 层 次 结 构 来 存 储 cat。 要 观 察 Linux FSSTND, 可 以 在 实 际 目 录 的 位 置 使 用 关 键 词 “FSSTND”。 不 幸 的 是 , 需 要 指 定 所 有 系 统 man 目 录 树 的 路 径 , 包 括 替 代 的 操 作 系 统 路 径 , 如 /usr/man/sun 和 任 何 的 NLS 区 域 语 言 路 径 , 如 /usr/man/de_DE.88591。 由 于 是 按 写 的 顺 序 逐 行 解 析 的 , 因 此 必 须 先 列 出 作 为 另 一 层 次 结 构 的 次 级 结 构 的 manpath, 否 则 会 出 现 不 正 确 的 匹 配 。 例 如 , /usr/man/de_DE.88591 应 出 现 在 /usr/man 之 前 。
DEFINE 
键  值 这 种 形 式 的 行 定 义 各 种 配 置 变 量 ; 请 查 看 默 认 的 配 置 文 件 了 解 手 册 分 页 工 具 使 用 了 哪 些 变 量 。 它 们 包 括 指 向 各 种 程 序 的 路 径 (如 greptbl), 和 这 些 程 序 的 默 认 参 数 集 。
SECTION
章 节 ... 这 种 形 式 的 行 定 义 手 册 章 节 的 搜 索 顺 序 。 如 果 配 置 文 件 中 没 有 SECTION 指 令 , 默 认 为 :

SECTION 1 n l 8 3 0 2 3type 5 4 9 6 7 如 果 给 出 了 多 个 SECTION 指 令 , 它 们 的 章 节 列 表 会 被 合 并 。 如 果 某 个 特 定 扩 展 不 在 列 表 中 (像 1mh), 它 会 和 它 所 属 章 节 的 其 他 部 分 一 起 显 示 。 这 样 的 效 果 是 , 若 要 强 制 某 种 特 定 的 顺 序 , 您 只 需 明 确 列 出 扩 展 。 带 扩 展 的 章 节 通 常 应 该 与 其 主 章 节 相 邻 (如 “1 1mh 8 ...)。

SECTIONS 是 此 指 令 的 替 代 名 称 , 也 允 许 使 用 。

MINCATWIDTH 宽 度 如 果 终 端 宽 度 小 于 宽 度 , 将 不 会 创 建 (若 缺 少 )或 显 示 cat 页 面 。 默 认 值 为 80。
MAXCATWIDTH 
宽 度 如 果 终 端 宽 度 大 于 宽 度 , 将 不 会 创 建 (若 缺 少 )或 显 示 cat 页 面 。 默 认 值 为 80。
CATWIDTH 
宽 度 如 果 宽 度 是 非 零 的 , 对 指 定 宽 度 的 终 端 将 总 是 格 式 化 cat 页 面 , 不 管 实 际 使 用 的 终 端 宽 度 是 多 少 。 此 数 值 将 覆 盖 MINCATWIDTHMAXCATWIDTH
NOCACHE
此 标 志 阻 止 man(1) 自 动 创 建 cat 页 面 。

BUGS

除 非 完 全 准 确 的 遵 守 了 这 些 规 则 , 否 则 手 册 分 页 工 具 会 工 作 不 正 常 。 这 些 规 则 过 于 复 杂 了 。

https://gitlab.com/man-db/man-db/-/issues
https://savannah.nongnu.org/bugs/?group=man-db