WHATIS(1)

名称
whatis - 显示在线手册页说明

概述
whatis [-dlv?V] [-r|-w] [-s 列表] [-m 系统[,...]] [-M 路径] [-L 区域] [-C 文件] 名称 ...

描述
每个手册页中都有一个概述。whatis 搜索手册页名称并显示任何与 名称 匹配的手册页描述。

名称 可以包含通配符(-w)或是正则表达式(-r)。使用这些选项时，可能要给 名称 加引号或对特殊字符转义，以阻止 shell 解释它们。

索引 数据库在搜索时使用，它们由 mandb 程序更新。取决于您的安装方式，这可能是通过定期的 cron 任务进行的，或者需要在安装新手册页后手动进行。要从相对 索引 数据库生成旧式的文本 whatis 数据库，调用这个命令：

whatis -M manpath -w '*' | sort > manpath/whatis

其中 manpath 是手册页层次结构，如 /usr/man。

选项

-d, --debug
    打印调试信息。

-v, --verbose
    打印详细的警告消息。

-r, --regex
    将每个 名称 解释为正则表达式。如果 名称 匹配页面名称的任何部分，将视为一个匹配。该选项会使 whatis 略微变慢，这是由数据库搜索的原理导致的。

-w, --wildcard
    将每个 名称 解释为包含 shell 风格通配符的模式。要匹配，展开的 名称 要与整个页面名称匹配。该选项会使 whatis 略微变慢，这是由数据库搜索的原理导致的。

-l, --long
    不按终端宽度截断输出。通常会将输出截短为终端宽度，以免显示写得不好的 时显示混乱。

-s 列表, --sections 列表, --section 列表
    只搜索指定的手册章节。列表 是由冒号或逗号分隔的章节列表。如果 列表 中的指定的是简单的章节号，如“3”，则显示的描述列表将只包含“3”、“3perl”“3x”等章节中的页面；如果 列表 中的章节号带扩展，如“3perl”，则显示的描述列表将只包含手册章节中对应部分的页面。

-m 系统[,...], --systems=系统[,...]
    如果此系统可以访问其他操作系统的手册页层次结构，可以使用此选项访问它们。要搜索 NewOS 的手册页名称，使用 -m NewOS 选项。

    指定的 系统 选项可以是逗号分隔的操作系统名称组合。要包括本地操作系统的手册页名称，可以在参数字符串中包含系统名 man。此选项会覆盖 $SYSTEM 环境变量。

-M 路径, --manpath=路径
    另外指定一组以冒号分隔的手册页层次结构作为搜索路径。默认情况下 whatis 会使用 $MANPATH 环境变量作为搜索路径；如果该环境变量为空或未设置，程序会根据您的 $PATH 环境变量确定相应的手册路径。此选项会覆盖 $MANPATH 环境变量的内容。

-L 区域, --locale=区域
    whatis 通常会通过调用 C 语言函数 setlocale(3) 来确定您的当前区域设置。该函数会查询多个环境变量，可能包括 $LC_MESSAGES 和 $LANG。要临时覆盖检测到的值，请使用该选项直接向 whatis 提供一个 区域 字符串。注意，在搜索页面实际开始前它不会生效。帮助消息等输出将始终以检测到的区域语言显示。

-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 个字符。

文件

/usr/share/man/index.(bt|db|dir|pag)
    传统的全局 索引 数据库缓存。

/var/cache/man/index.(bt|db|dir|pag)
    与 FHS 兼容的全局 索引 数据库缓存。

/usr/share/man/.../whatis
    传统的 whatis 文本数据库。

亦见
apropos(1), man(1), mandb(8)

作者
Wilf. (G.Wilford@ee.surrey.ac.uk).
Fabrizio Polacco (fpolacco@debian.org).
Colin Watson (cjwatson@debian.org).

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