概述
apropos [-dalv?V] [-e|-w|-r]
[-s 列表] [-m
系统[,...]] [-M path] [-L
区域] [-C 文件]
关键词 ...
描述
每个手册页都包含一段概述。apropos
会搜索包括 关键词
的描述。
关键词
通常为正则表达式,视同使用(-r)选项;或包含通配符(-w);或完全匹配关键词(-e)。使用这些选项时可能要给
关键词
加引号,或对特殊字符转义(\),以防
shell 解释它们。
标准匹配规则允许匹配手册页名称和手册页描述中的单词边界。
通过 apropos
搜索的数据库已由
mandb
程序更新。取决于您的安装方式,这可能是通过定期的
cron
任务进行的,或者需要在安装新手册页后手动进行。
选项
- -d, --debug
- 打印调试信息。
- -v, --verbose
- 打印详细的警告消息。
- -r, --regex
- 将每个关键词解释为正则表达式。这是默认行为。每个关键词将与手册页名称和描述分别匹配。匹配不限于单词边界。
- -w,
--wildcard
- 将每个关键词解释为
shell
风格的通配符。每个关键词将与手册页名称和描述分别匹配。如果同时使用了
--exact
选项,只有展开的关键词与整个描述或手册页名称完全匹配时才视为找到。否则关键词也允许沿描述中的单词边界匹配。
- -e, --exact
- 每个关键词将严格与手册页名称和描述匹配。
- -a, --and
- 只显示匹配提供的全部关键词的项目。默认是显示匹配任一关键词的项目。
- -l, --long
- 不按终端宽度截断输出。通常会将输出截短为终端宽度,以免显示写得不好的
时显示混乱。
- -s 列表,
--sections 列表, --section
列表
- 只搜索指定的手册章节。列表
是由冒号或逗号分隔的章节列表。如果
列表
中的指定的是简单的章节号,如“3”,则显示的描述列表将只包含“3”、“3perl”“3x”等章节中的页面;如果
列表
中的章节号带扩展,如“3perl”,则显示的描述列表将只包含手册章节中对应部分的页面。
- -m
系统[,...],
--systems=系统[,...]
- 如果此系统可以访问其他操作系统的手册页描述,则可以通过使用这一选项来搜索它们。如要搜索
NewOS
的手册页描述,使用
-m NewOS 选项。
指定的 系统
选项可以是逗号分隔的操作系统名称组合。要在搜索中包括本地操作系统的
whatis
描述,可以在参数字符串中包含系统名
man。此选项会覆盖
$SYSTEM 环境变量。
- -M 路径, --manpath=路径
- 另外指定一组以冒号分隔的手册页层次结构作为搜索路径。默认情况下
apropos 会使用 $MANPATH
环境变量作为搜索路径;如果该环境变量为空或未设置,程序会根据您的
$PATH
环境变量确定相应的手册路径。此选项会覆盖
$MANPATH
环境变量的内容。
- -L 区域, --locale=区域
- apropos 通常会通过调用 C
语言函数 setlocale(3)
来确定您的当前区域设置。该函数会查询多个环境变量,可能包括
$LC_MESSAGES 和
$LANG。要临时覆盖检测到的值,请使用该选项直接向
apropos 提供一个 区域
字符串。注意,在搜索页面实际开始前它不会生效。帮助消息等输出将始终以检测到的区域语言显示。
- -C 文件, --config-file=文件
- 使用此用户配置文件代替默认的
~/.manpath。
- -?, --help
- 打印帮助消息并退出。
- --usage
- 打印简短的帮助消息并退出。
- -V, --version
- 显示版本信息。
退出状态
- 0
- 程序成功执行。
- 1
- 用法、语法或配置文件出错。
- 2
- 操作出错。
- 16
- 未找到符合指定条件的结果。
环境
- SYSTEM
- 如果设置了 $SYSTEM
环境变量,其效果将与
-m
选项的参数相同。
- MANPATH
- 如果设置了 $MANPATH
环境变量,它的值将被解释为要使用的,以冒号分隔的手册页层次结构搜索路径。
请参考 manpath(5)
中的搜索路径一节以了解默认行为以及处理该环境变量的细节。
- MANWIDTH
- 如果设置了 $MANWIDTH
,它的值将用作终端宽度(参阅
--long
选项)。如果未设置它,终端宽度将通过
$COLUMNS 环境变量或调用
ioctl(2)(如果有的话)计算。若都失败,将退回到
80 个字符。
- POSIXLY_CORRECT
- 如果设置了 $POSIXLY_CORRECT
环境变量(即使是空值),默认的
apropos
搜索将视为扩展的正则表达式(-r)。不过,现在这已经是默认行为了。
文件
- /usr/share/man/index.(bt|db|dir|pag)
- 传统的全局 索引
数据库缓存。
- /var/cache/man/index.(bt|db|dir|pag)
- 与 FHS 兼容的全局
索引
数据库缓存。
- /usr/share/man/.../whatis
- 传统的 whatis
文本数据库。
作者
Wilf. (G.Wilford@ee.surrey.ac.uk).
Fabrizio Polacco (fpolacco@debian.org).
Colin Watson (cjwatson@debian.org).
https://gitlab.com/man-db/man-db/-/issues
https://savannah.nongnu.org/bugs/?group=man-db