Linux/Unix:使用相同的名称查看重叠的手册页

时间:2020-01-09 10:42:26  来源:igfitidea点击:

Linux手册页中有一些名字一样。我怎么知道看哪个?
例如,当我运行whatis printf时:

输出:

printf (1) format and print data 
printf (1p) write formatted output 
printf (3) formatted output conversion 
printf (3p) print formatted output 
printf [builtins] (1) bash built-in commands, see bash(1) 

如何访问重叠的手册页,(1),(1p),(3)等的含义是什么?

所有手册页均分为多个部分。通常,Linux或者类Unix操作系统具有八个或者九个部分。每个手册页仅出现在一个部分中。手册的标准部分包括(摘自我的CentOS 6.x服务器):

  • 第1节:用户命令
  • 第2节:系统调用
  • 第3节:C库函数
  • 第4节:设备和特殊文件
  • 第5节:文件格式和约定
  • 第6节:游戏等。啊
  • 第7节:杂项
  • 第8节:系统管理工具和重传

许多Linux发行版和其他Unix变体根据其具体情况自定义手册部分,其中通常包括其他部分。
例如,第9节可能包含内核内部结构及更多内容。

命令后括号内的数字是什么意思?

它是手册页所在的手册部分(section)。
例如,useradd(8)表示:

  • useradd命令名称。
  • 8记录命令的部分(系统管理工具和Deamons)。

例如,ls(1)表示:

  • ls命令名称。
  • 1记录命令的部分(用户命令)。

命令名称后面的那些数字是多少,如ls(1)一样?

语法:查看手册页

在不同的部分中有相同名称的手册页,涉及不同的内容。
语法为:

man page-to-view
man section page-to-view

要阅读格式化和打印数据的printf(1)命令手册,请执行:

$ man 1 printf

要阅读printf(3)程序员printf()手册,请执行:

$ man 3 printf

查找命令或者API可执行的功能

执行以下命令以查找由命令参数指定的给定命令,系统调用,库函数或者特殊文件名:

whatis command
whatis ls

输出示例:

ls                   (1)  - list directory contents
ls                   (1p)  - list directory contents

1p和3p引用以下部分的字母(取自我的IBM AIX Unix服务器):

C	Specifies commands (including system management commands).
F	Specifies file-type manual pages.
L	Specifies library functions.
n	Specifies new.
l	Specifies local.
o	Specifies old.
p	Specifies public.

请注意,在基于GNU的系统上,如ls(1p)中的p节字母表示您正在查看POSIX程序员手册。