手册页部分 1M: 系统管理命令

退出打印视图

更新时间: 2014 年 7 月
 
 

catman(1M)

名称

catman - 创建参考手册的格式化文件

用法概要

/usr/bin/catman [-c] [-n
] [-p] [-t] [-w] [
-M directory] 
     [-T macro-package] [
sections]
/usr/bin/catman [-M 
directory] -w

描述

catman 实用程序基于 nroff(1)sgml(5) 输入文件创建在线手册的预格式化版本。通过此功能,可以轻松地在一组关联的计算机之间分发预格式化手册页,因为此功能使预格式化手册页的目录成为自包含目录,独立于未格式化的条目。

通过 –w 选项,catman 还可在 MANPATH–M 选项指定的目录中创建索引文件。如果未指定 MANPATH– M 选项,且未指定 –ncatman 缺省情况下会在 /usr/share/man/ /usr/gnu/share/man/ 目录中创建索引文件。如果任何指定或缺省目录为只读目录,则 catman 会失败,并在标准错误中显示一条错误消息,指出不允许写入该目录。

系统会检查每个手册页,并对预格式化版本缺失或过期的手册页进行重新创建。如果进行了任何更改,则 catman 将重新创建索引文件。

如果手册页为 shadow 页,即该手册页将另一手册页作为其内容源,则会在 catxfmt x 目录中创建指向相应预格式化手册页的符号链接。

未格式化 nroff 源文件中的阴影文件由第一行标识,其形式如下:.so manx /yyy.x

SGML 源中的阴影文件由字符串 SHADOW_PAGE 标识。在阴影文件中声明的文件实体标识要作为源的文件。

选项

支持以下选项:

–c

基于 SGML 源在相应 man 子目录中创建未格式化的 nroff 源文件。此选项将覆盖 man 目录中与 SGML 文件具有相同名称的任何现有文件。

–n

不创建(或重新创建)索引文件。如果指定了 –n 选项,则不会创建索引文件,并且 apropos(1)whatis(1) 命令可能比其他情况下运行速度慢。

–p

模拟运行选项。即显示将执行的操作,而不实际执行。

–t

在相应 fmt 子目录中创建经过 troff 处理的条目,而不是通过 nroff 置入 cat 子目录。

–w

在 MANPATH 环境变量或 –M 选项指定的目录中,创建供 apropos(1)whatis(1) 以及 man(1) –f–k–K 选项使用的索引文件。如果未指定 MANPATH 或 –M 选项,则缺省情况下会在 /usr/share/man/ /usr/gnu/share/man/ 目录中创建索引文件。不会执行手册重新格式化。

–M directory

更新位于指定 directory (缺省情况下为 /usr/share/man)中的手册页。如果指定了 –M 选项,则目录参数不能包含 `,'(逗号),因为逗号用于分隔节编号。请参见 man(1)

–T macro-package

使用 macro-package 来替代标准手册页宏(缺省情况下为 man(5))。

操作数

支持下列操作数:

sections

如果有一个不以 `' 开头的参数,则将其作为要由 catman 处理的手册节的空格分隔列表。如果指定了此操作数,则仅处理列表中的手册节。例如,

catman 1 2 3

仅更新手册节 123。如果未列出特定节,则处理由环境变量 MANPATH 指定的 man 目录中的所有节。

环境变量

TROFF

指定 –t 标志时要使用的格式化程序的名称。如果未设置,将使用 troff(1)

MANPATH

catmanman(1) 处理的目录的冒号分隔列表。每个目录后面可以跟有节的逗号分隔列表。如果设置,则其值将覆盖作为缺省目录搜索路径的 /usr/share/man,以及作为缺省节搜索路径的 man.cf 文件。–M–s 标志反过来会覆盖这些值。

示例

示例 1 创建索引文件

以下命令在 /usr/local/share/man 目录中创建索引文件。

# catman -M /usr/local/share/man -w

文件

/usr/share/man

缺省手册目录位置

/usr/share/man/man*/*.*

原始 nroff 输入文件

/usr/share/man/cat*/*.*

预格式化的 nroff 手册页

/usr/share/man/fmt*/*.*

预格式化的 troff 手册页

/usr/share/lib/tmac/an

缺省宏软件包

/usr/share/man/man_index/*
/usr/share/man/man_index/term.idx
/usr/share/man/man_index/term.dic
/usr/share/man/man_index/term.req
/usr/share/man/man_index/term.pos
/usr/share/man/man_index/term.doc
/usr/share/man/man_index/term.exp

–K 查询的索引文件

属性

有关下列属性的说明,请参见 attributes(5)

属性类型
属性值
可用性
text/doctools
CSI
Enabled(已启用)
接口稳定性
Committed(已确定)

另请参见

apropos(1)man(1)nroff(1)rm(1)troff(1)whatis(1)attributes(5)man(5)sgml(5)

诊断

man?/xxx.? (.so'ed from man?/yyy.?): No such file or directory

括号外的文件缺失,括号内的文件引用了缺失的文件。

target of .so in man?/xxx.? must be relative to /path/to/man or .so in xxx.? indicating shadow file and its reference is in the same section subdirectory (man*)

catman 只允许使用 .so man?/xxx.? 模式引用相对于目录 /path/to/man 的文件名,或者使用更简短的 .so in xxx.? 模式引用位于同一子目录中的文件名。

opendir:man?: No such file or directory

一条无害的警告消息,指出 catman 通常查找的目录之一缺失。

*.*: No such file or directory

一条无害的警告消息,指出 catman 遇到一个空目录。

警告

如果先前运行 catman 安装 cat* 目录的用户升级操作系统,则应该在运行 catman 之前删除整个 cat* 目录结构。请参见 rm(1)

不要重新运行 catman 以重建索引文件,除非存在完整的 man* 目录集。catman 基于 man* 目录构建索引文件。

附注

windex 数据库已由索引文件取代。与 windex 不同,索引文件生成对可以编制索引的内容没有任何特定限制或先决条件。