man是最可靠的方式,直接显示权威、完整、结构化的官方文档;它按章节自动查找(默认优先第1章),涵盖语法、选项、示例、相关命令等,而--help仅提供简短摘要且不保证存在。

man 是最可靠的方式,直接显示权威、完整、结构化的官方文档。其他方法如 --help 或 info 只能作为补充,不能替代 man。
用 man 查命令的完整手册页
几乎所有标准 Linux 命令都配有 man 页面,内容包含语法、选项说明、示例、相关命令和注意事项。man 会自动按章节(如用户命令、系统调用、库函数)查找,优先返回第 1 章(普通命令)。
实操建议:
- 输入
man ls查看ls的全部用法;按/-l可搜索选项,n跳到下一个匹配项 - 若命令有多个含义(比如
printf既是 shell 内建又是外部命令),可用man 1 printf指定查第 1 章,man 3 printf查 C 库函数 - 部分系统默认不装所有
man包(如 CentOS 最小安装),需手动安装man-pages或对应软件包
--help 只适合快速确认常用参数
--help 输出的是开发者写的简短摘要,不是完整文档。它不保证存在(尤其老命令或某些 BusyBox 实现),也不包含行为细节、兼容性说明或错误码解释。
常见问题:
-
ls --help显示了-l、-a等选项,但没说ls -l /dev中设备文件的major:minor编号怎么解读 -
cut --help不提-f和-d必须成对出现,也不警告空分隔符会导致整个字段被跳过 - 有些命令(如
bash内建)根本不响应--help,必须用help命令
查不到 man 页面时的 fallback 方式
当 man command 提示 “No manual entry”,说明本地没装对应文档。这时别急着搜网页,先试试这些本地手段:
- 运行
command --help或command -h(注意:不是所有命令都支持-h) - 对 shell 内建命令(如
cd、export),用help cd;加-m参数可模拟 man 格式:help -m cd - 用
whatis command看一句定义,apropos keyword模糊搜相关命令(例如apropos "file copy") -
info command在某些 GNU 工具链中比 man 更详细(如info coreutils),但交互体验不如 man 直观
容易忽略的细节:man 的实际行为依赖配置
man 不是“固定不变”的工具——它的表现受 MANPATH、MANSECT、甚至 /etc/man_db.conf 影响。比如:
- 某些容器环境或精简系统里,
MANPATH为空,man就找不到任何页面,即使文件物理存在 -
man -k(即apropos)需要定期运行mandb更新数据库,否则搜不到新装命令 - 中文 locale 下,部分 man 页面可能显示乱码,临时切英文:
LANG=C man ls
真正卡住的时候,往往不是命令不会用,而是没意识到 man 本身也依赖一套可配置的底层机制。











