Scroll to navigation

MANPATH(5) /etc/man_db.conf MANPATH(5)

名称

manpath - 格式化 /etc/man_db.conf 文件

描述

manpath 配置文件是手册页工具程序用来在运行时访问用户的 manpath 的。它指示了哪些手册页层次结构(manpath)应视为系统层次结构,并向它们分配用于保存 cat 文件的目录。

如果已经设置了环境变量 $MANPATH,/etc/man_db.conf 中包含的信息不会覆盖它。

格式

当前支持以下字段类型:

# 注释
空行或以 # 开头的行将视为注释并忽略。
这种形式的行指定每个自动生成的 $MANPATH 应包含的 manpath。它通常包含 /usr/man
这种形式的行将设置 $PATH 到 $MANPATH 的映射。对于在用户 $PATH 中找到的每个 path_element,会将 manpath_element 添加到 $MANPATH
这种形式的行指示哪些 manpath 视为系统 manpath,还可指定它们的 cat 文件保存在哪里。如果 man 是一个 setuid 程序,此字段类型将尤为重要,因为(当在系统配置文件 /etc/man_db.conf 而不是每个用户配置文件 .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 之前。

这种形式的行定义各种配置变量;请查看默认的配置文件了解手册分页工具使用了哪些变量。它们包括指向各种程序的路径(如 greptbl),和这些程序的默认参数集。
这种形式的行定义手册章节的搜索顺序。如果配置文件中没有 SECTION 指令,默认为:

SECTION 1 n l 8 3 0 2 5 4 9 6 7

如果给出了多个 SECTION 指令,它们的章节列表会被合并。

如果某个特定扩展不在列表中(像 1mh),它会和它所属章节的其他部分一起显示。这样的效果是,若要强制某种特定的顺序,您只需明确列出扩展。带扩展的章节通常应该与其主章节相邻(如“1 1mh 8 ...)。

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

如果终端宽度小于 宽度,将不会创建(若缺少)或显示 cat 页面。默认值为 80。
如果终端宽度大于 宽度,将不会创建(若缺少)或显示 cat 页面。默认值为 80。
如果 宽度 是非零的,对指定宽度的终端将总是格式化 cat 页面,不管实际使用的终端宽度是多少。此数值通常应在 MINCATWIDTHMAXCATWIDTH 设置的范围之内。
此标志阻止 man(1) 自动创建 cat 页面。

BUGS

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

2016-12-12 2.7.6.1