2008年11月11日星期二

man 命令详解

man 命令

用途

显示联机手册条目。
语法

man [ [ [ -c ] [ -t ] [ Section ] ] | [ -k | -f ] ] [ -MPath ] [ -r ] Title ...
描述

man 命令提供有关主题的参考信息,例如命令、子例程和文件。man 命令提供由名称指定的对命令的单行描述。man 命令也提供所有命令的信息,这些命

令的描述包含用户指定的关键字集合。

man 命令格式化指定的手册页面集合。如果为 Section 参数指定一个段,那么 man 命令在手册页面的该段中搜索 Title 参数指定的标题。Section 参数

的值可以是 1 到 8 的阿拉伯数字或字母。

Section 字母是:
C 指定命令(包含系统管理命令)。
F 指定文件类型手册页面。
L 指定库函数。
n 指定为新的。
l 指定为局部的。
o 指定为原来的。
p 指定为公用的。
注:
n、l、o 和 p 段说明符对于读取超文本信息库无效,超文本信息库包含操作系统文档。

Section 数字是:
1 表示用户命令和守护进程。
2 表示系统调用和内核服务。
3 表示子例程。
4 表示特殊文件、设备驱动程序和硬件。
5 表示配置文件。
6 表示游戏。
7 表示杂项命令。
8 表示管理命令和守护进程。
注:
超文本信息数据库中的操作系统文档仅分组成三个段:命令手册页面(在段 1 中,相当于段 C)、子例程手册页面(在段 3 中,相当于段 L)和文件手

册页面(在段 4 中,相当于段 F)。当搜索超文本信息时,指定段 1、6、7 或 8 缺省为命令手册页面,段 2 或 3 缺省为子例程手册页面,段 4 或 5

缺省为文件手册页面。

如果 Section 参数省略,则 man 命令搜索所有的手册段。

man 的搜索路径使用一个由 :(冒号)隔开的其中有子例程手册的目录列表。MANPATH 环境变量值用于缺省路径。当读取超文本信息库时,MANPATH 环境

变量无效。

man 命令显示手册页面如下:

1. man 命令搜索 /usr/share/man 目录下的 nroff 目录(man?)。
2. man 命令搜索 /usr/share/man 目录下的格式化版本目录(cat?)。如果格式化版本可用,并且它比 nroff 命令源修改得更晚,则 man 命令显示

格式化版本。否则,手册页面以 nroff 命令格式化和显示。如果用户有许可权,则格式化的手册页面可存储在正确的地方,以便最后一次启用 man 命令

不会再一次格式化页面。
注:
这里没有所给的手册页面的 nroff 源。然而,可以将手册页面的 nroff 源放置到 man 目录中,然后 man 命令能够定位并处理 nroff 源。
3. 如果 man 命令在 /usr/share/man/man 或 /usr/share/man/cat 目录中没有找到手册页面,则 man 命令就从超文本信息库中读取。超文本信息库

驻留在 /usr/share/man/info 目录结构中,它包含操作系统文档。当从超文本数据库中读取时, man 命令并不把任何手册页面放进 /usr/share/man/cat

目录结构中。man 命令从手册页面中删除格式化信息,调整各行使它们适合显示器,使用 PAGER 环境变量中描述的命令显示手册页面。

当访问 HTML 数据库时,man 在查找其它 LPP 库之前查找操作系统库。在这些库中,它按以下顺序处理信息:
cmds 命令参考
libs 子例程,系统调用
files 文件引用

如果标准输出是个 tty,则 man 命令使用带有 -s 和 -v 标志的 more 命令输送它的输出。-s 标志消除多个空行并且在屏幕上每显示一页就停止。-v 标

志禁止在屏幕上显示非打印字符。要继续滚动,按空格键。在输出停止后要继续再滚动 11 行,按 Ctrl-D 按键顺序。

PAGER 环境变量可以设置到任何所需的页面调度程序上。缺省值是 more 命令。要更改缺省的页面调度程序,请输入:

PAGER=Somepager
export PAGER

例如,如果以相反或部分换行方式来定制手册页面,PAGER 环境变量可以设置到 /usr/bin/pg,以便换行不会像控制字符那样打印出来。这个过程对手册

页面并非是必要的。

当 man 命令使用超文本数据库时,它能够检索几个物件。例如,man open 显示几个物件。使用 SIGINT(Ctrl-C)完全退出 man 命令。另一方面,man

open close 也显示几个物件,但使用 SIGINT(Ctrl-C)会使 man 显示 close 命令信息而不是退出。再次使用 SIGINT(Ctrl-C)完全退出 man 命令。

当指定名称中包含 $(美元符号)的“网络计算系统”库例程之一时,应在 $ 前输入一个 \ (反斜杠)。
标志

-c 显示使用 cat 命令的手册信息。
-f 显示在关键字数据库中仅与作为最终参数给定的命令名相关的项。可以输入多个命令名,中间用空格隔开。使用这个标志仅搜索命令物件。要使

用 -f 标志,root 用户必须以前已输入 catman -w 以建立 /usr/share/man/whatis 文件。
-k 显示关键字数据库中包含与作为最终参数给定的字符匹配的标题的字符串的每一行。可以输入多个标题,中间用空格隔开。要使用 -k 标志,

root 用户必须以前已输入 catman -w 以建立 /usr/share/man/whatis 文件。
-MPath 更改 man 命令搜索手册信息的标准位置。 man 命令使用的搜索路径是一个由 :(冒号)隔开的包含手册子目录的目录列表。 MANPATH 环境变量

值用作缺省路径。
注:
当 man 命令从超文本数据库中读取时,-M 标志无效。
-r 手册信息的远程搜索。如果远程搜索失败(原因是远程机器不可到达,或读取 URL 地址时出现问题,或本地机器上未安装 Java),那么 man 为

请求联机帮助页进行本地搜索。
注:
DOCUMENT_SERVER_MACHINE_NAME 环境变量应设置到用户想要使用的文档搜索服务器机器的名称上。如果“AIX 基本文档”不支持主机的语言环境,那么

man 命令搜索备用语言环境的文档。如果搜索成功,则文档页在转换到本地主机的语言环境后显示。如果备用语言环境未在本地主机上安装,则 man 命令

显示文档页失败。
-t 使用 troff 命令格式化手册信息。如果在超文本信息基中查找到手册页面,则忽略此标志。
退出状态

这条命令返回以下退出值:
0 成功完成。
>0 发生错误。
示例

1. 要显示关于 grep 命令的信息,请输入:

man grep

2. 要显示关于 rpc_$register 库例程的信息,请输入:

man rpc_\$register

3. 要显示包含“mkdir”字符串的 /usr/share/man/whatis 关键字数据库中的所有项,请输入:

man -k mkdir

此输出等同于 apropos 命令。只有在 /usr/share/man/whatis 关键字数据库已存在时,才能从 -k 标志接收输出。
4. 要显示与 nroff 和 troff 命令相关的关键字数据库中的所有项,请输入:

man -f nroff troff

此输出等同于 whatis 命令。只有在 /usr/share/man/whatis 关键字数据库已存在时,才能从 -k 标志接收输出。
5. 要显示 /usr/share/man 或 /usr/share/man/local 路径中的所有与 ftp 命令相关的物件,请输入:

man -M/usr/share/man:/usr/share/man/local ftp

文件

/usr/bin/man 包含 man 命令。
/usr/share/man 标准手册目录结构。
/usr/share/man/cat?/* 包含预格式化的页面的目录。
/usr/share/man/whatis 包含关键字数据库。
/usr/share/man/man?/* 包含 nroff 格式手册页面的目录。

没有评论:

发表评论

网站统计