man命令****是Linux系统中最重要的命令之一,它是"manual"(手册)的缩写,用于查看Linux系统中命令、函数、配置文件等的详细说明文档。man命令是Linux系统管理员和开发者的必备工具,熟练掌握man命令可以大大提高工作效率,减少对互联网搜索的依赖。
目录
一、基本用法
bash
man [选项] 命令/函数/配置文件
语法: man 选项 指令
功能: 查看指令的使用规则等
二、man页面的章节
Linux的man 手册通常分为 9 个章节(不同系统可能略有差异):
-
普通命令 - 用户可执行的基本命令
-
系统调用 - 如 open、write 等系统调用函数(可方便查询所需头文件)
-
库函数 - 如 printf、fread 等标准库函数
-
特殊文件 - /dev 目录下的各种设备文件
-
文件格式 - 说明配置文件的格式和字段含义(如 passwd 文件)
-
游戏相关 - 游戏程序的自定义内容
-
杂项 - 包含环境变量等附加说明(如 environ 全局变量),宏包和约定等
-
系统管理命令 - 仅供 root 用户使用的命令(如 ifconfig)
-
内核例程 - 非标准的内核例程
三、常用选项
-f
:显示命令的简短描述(等同于whatis
命令)
bash
man -f ls
*
-k
:搜索包含关键词的手册页(等同于apropos
命令)
bash
man -k network
*
-a
:显示所有匹配的手册页(默认只显示第一个找到的)
bash
man -a printf
*
-w
:显示手册页的路径
bash
man -w ls

四、在man页面中的操作
进入man页面后,可以使用以下快捷键进行导航:
快捷键 | 功能说明 | 补充说明 |
---|---|---|
空格键 | 向下翻一页 | 最常用的翻页方式 |
b | 向上翻一页 | 相当于 Page Up |
Enter | 向下滚动一行 | 精细阅读时使用 |
/关键词 | 向前(向下)搜索关键词 | 支持正则表达式(如 /^printf ) |
?关键词 | 向后(向上)搜索关键词 | 从当前位置向上搜索 |
n | 跳转到下一个匹配项 | 配合 / 或 ? 使用 |
N | 跳转到上一个匹配项 | 配合 / 或 ? 使用 |
q | 退出 man 页面 | 强制退出 |
h | 查看帮助(显示所有可用命令) | 会列出完整的快捷键说明 |
= | 显示当前页面信息(行号/百分比) | 了解阅读进度 |
:n | 切换到下一个手册文件 | 仅在使用 man -a 时有效 |
:p | 切换到上一个手册文件 | 仅在使用 man -a 时有效 |
五、指定章节查询
当要查询的内容可能存在于多个章节时,可以指定章节号:
bash
man 2 open # 查看系统调用open
man 3 printf # 查看库函数printf
报错:系统没有安装第2章节的系统调用文档和第3章节的C库函数文档。

解决方法:需要安装开发相关的手册包,不同Linux发行版命令如下
对于CentOS/RHEL:
bash
sudo yum install man-pages man-pages-overrides
sudo yum install glibc-doc
对于Ubuntu/Debian:
bash
sudo apt update
sudo apt install manpages-dev manpages-posix-dev
安装完成后,这些系统调用和库函数的文档就可以正常查看了。
六、实际示例
-
查看ls命令的帮助:
bashman ls
-
查看passwd文件的格式说明:
bashman 5 passwd
-
查找所有与网络相关的手册页:
bashman -k network
七、自定义man页面
man页面的显示可以通过环境变量进行配置:
-
MANPATH
:设置man页面的搜索路径 -
MANWIDTH
:设置man页面的显示宽度 -
PAGER
:设置用于查看man页面的分页程序(默认是less)
例如:
bash
export MANWIDTH=80 # 设置每行显示80个字符
八、man页面的结构
一个典型的man页面包含以下部分:
| 章节 | 说明 | 示例 |
|-----------------|---------------------|-----------------------------------------------------|---|
| NAME | 命令/函数名称及单行描述 | ls - list directory contents
|
| SYNOPSIS | 命令语法格式(方括号[]
表示可选) | ls [OPTION]... [FILE]...
| |
| DESCRIPTION | 详细功能描述(可能包含参数、返回值等) | List information about the FILEs...
|
| OPTIONS | 选项说明(通常以-
或--
开头) | -a, --all
do not ignore entries starting with .
|
| EXAMPLES | 典型使用示例(非所有手册都有) | $ ls -l /tmp
$ ls --color=auto
|
| SEE ALSO | 相关命令/函数参考(用逗号分隔) | printf(1), fopen(3), syscalls(2)
|
| BUGS | 已知问题或限制(非所有手册都有) | The -z option may cause memory leaks
|
| AUTHOR | 作者/维护者信息 | Written by John Doe and Jane Smith
|
九、替代方案
除了man之外,Linux系统还有其他获取帮助的方式:
-
--help
选项:大多数命令都支持bashls --help
-
info
命令:GNU项目的超文本帮助系统bashinfo ls
-
在线文档:如/usr/share/doc目录下的文档