使用man命令读取文档
man命令简介
man page 源自过去的linux程序员手册,该手册篇幅很长,足以打印成多本书册。它们分别包含具体文件类型的信息,现已成为如下所列章节。
章节 | 内容类型 |
---|---|
1 | 用户命令(可执行命令和shell程序) |
2 | 系统调用(从用户空间调用的内核例程) |
3 | 库函数(由程序库提供) |
4 | 特殊文件(如设备文件) |
5 | 文件格式(用于许多配置文件和结构) |
6 | 游戏(过去的有趣程序章节) |
7 | 惯例、标准和其他(协议、文件系统) |
8 | 系统管理和特权命令(维护任务) |
9 | Linux内核API(内核调用) |
为了区分不同章节中相同的主题名称,man page参考中在主题后面附上了章节编号(用括号括起)。例如,passwd(1) 介绍更改密码的命令,而passwd(5) 说明则用于存储本地用户账户的/etc/passwd文件格式。
若要读取具体的man page,请使用man topic。主题内容一次显示一个屏幕。使用箭头可单行滚动,或者使用空格键显示下一个屏幕。man
命令以配置的顺序搜索手册章节,首先显示热门的章节。例如,man passwd
默认情况下显示passwd(1) ,要显示具体章节的man page主题,请附上章节编号参数:man 5 passwd
显示passwd(5)。
根据关键字识别man page
能够高效搜索主题并在man手册中导航是一项非常重要的技能。下表列出了基本的man导航命令:
命令 | 结果 |
---|---|
空格键 | 向下滚动一个屏幕 |
PageDown | 向下滚动一个屏幕 |
PageUp | 向上滚动一个屏幕 |
向下箭头 | 向下滚动一行 |
向上箭头 | 向上滚动一行 |
d | 向下滚动半个屏幕 |
u | 向上滚动半个屏幕 |
/string | 在man page中向下搜索string |
n | 在man page中重复之前的向下搜索(即查找时的下一个) |
N | 在man page中重复之前的向上搜索(即查找时的上一个) |
g | 转到man page开头 |
G | 转到man page末尾 |
q | 退出man,并返回到命令shell提示符 |
重要
在执行搜索时,string允许使用正则表达式语法。简单的文本(如passwd)按照预期工作,正则表达式则使用元字符(如$、*、^)进行更复杂的匹配模式。因此,搜索包含程序表达式元字符的字符串(如make $$$)可能会产生意外结果。
使用man -k keyword
对man page执行关键字搜索,这会显示与关键字匹配的man page主题和章节编号的列表。
[root@linuxprobe Desktop]# man -k passwd
chpasswd (8) - update passwords in batch mode
fgetpwent_r (3) - get passwd file entry reentrantly
getpwent_r (3) - get passwd file entry reentrantly
gpasswd (1) - administer /etc/group and /etc/gshadow
grub2-mkpasswd-pbkdf2 (1) - Generate a PBKDF2 password hash.
htpasswd (1) - Manage user files for basic authentication
lpasswd (1) - Change group or user password
lppasswd (1) - add, change, or delete digest passwords.
pam_localuser (8) - require users to be listed in /etc/passwd
passwd (1) - update user's authentication tokens
sslpasswd (1ssl) - compute password hashes
passwd (5) - password file
passwd2des (3) - RFS password encryption
pwhistory_helper (8) - Helper binary that transfers password hashes from pass...
saslpasswd2 (8) - set a user's sasl password
smbpasswd (5) - The Samba encrypted password file
userpasswd (1) - A graphical tool to allow users to change their passwo...
vncpasswd (1) - change the VNC password
[root@linuxprobe Desktop]#
注意
关键字搜索依赖于 mandb(8)命令生成的索引,该命令必须以root身份运行。该命令每天通过cron.daily运行,或者通过anacrontab在启动一小时内运行(如果过期)。
重要
man
命令-K
选项执行全文本页面搜索,而不像-k
那样仅搜索标题和描述。全文本搜索可能会耗费更长的时间,使用更多的系统资源。