可能重复:
为什么类 Unix 环境中的程序名称后有数字?
我已经在手册页中看到了几个程序,例如GREP(3)
和PING(8)
。()s 中数字的意义是什么?
如果您运行man man
,您将在手册页中看到以下信息:
1 Executable programs or shell commands
2 System calls (functions provided by the kernel)
3 Library calls (functions within program libraries)
4 Special files (usually found in /dev)
5 File formats and conventions eg /etc/passwd
6 Games
7 Miscellaneous (including macro packages and conven‐
tions), e.g. man(7), groff(7)
8 System administration commands (usually only for root)
9 Kernel routines [Non standard]
一些名称与多个条目相关联,例如在我的系统上,“睡眠”在第 1 节中有一个条目,在第 3 节中有一个条目。您可以指定您想要的条目,例如
man 3 sleep
有时我只是猜测
man -a sleep
它依次显示与睡眠相关的每个条目。我只是遍历它们,直到找到我想要的那个。你也可以试试
man -k sleep
获得稍大的涉及“睡眠”一词的页面列表
该数字表示手册页所在的部分。对于您的示例:
grep(3)
要获取文档,请键入
man 3 grep
更常见的是,如果没有grep(2)
or grep(1)
,你可以侥幸逃脱
man grep
但是,我应该注意的grep
是在第 1 节中。第 3 节通常是为 C 函数保留的。一个例子是getopt
:getopt(1)
指的是命令行实用程序getopt
,但getopt(3)
指的是 C 函数getopt
。同样,read(1)
它是一个从标准输入读取的程序,但read(2)
它是用于程序的 POSIX 系统调用——它是您在大多数 Linux(和其他 Unix)系统上可以获得的最低级别的输入形式之一。
这是为了告诉您手册页部分的帮助... 8 通常是与管理相关的实用程序(/sbin、/usr/sbin 等)的位置
因此 GREP(3) 的帮助位于手册页第 3 部分,您可以man 3 grep
直接键入以获取 grep(3) 的帮助。