首页 > Sysadmin > 正文

Linux 查看命令详情的 5 种方法

huyuanwen 2026-11-01 Sysadmin

草稿待审 因源站 linux.zaixianjisuan.com 当前返回浏览器验证页,未能读取正文;本文骨架基于官方文档独立构建。

man、info、–help、whatis、apropos,五条路径覆盖从速查到精读的全场景。

一、TL;DR:按场景选工具

  • 精读手册页:man <命令>,Tab 翻页,q 退出。
  • 超文本手册:info <命令>,节点跳转,适合长文档。
  • 参数速查:<命令> --help,一行显示可用选项。
  • 快速定位:whatis <命令>、type <命令>、command -v <命令>。
  • 关键词搜索:apropos <关键词>,全手册索引匹配。

二、man 与 info:精读手册页

man 是系统默认手册分页器,按 SECTION 查找 [1]。执行 man ls 会打开 LS(1),显示 NAME、SYNOPSIS、DESCRIPTION 等标准节。man -k man 可按正则搜索手册名和短描述。

info 是 GNU 项目的超文本阅读器,把手册拆成节点,支持上下节点跳转 [2]。对 coreutils 这类长手册,info ls 比 man ls 更易浏览子节。

man ls | head -n 5
man -k man | head -n 3
info ls | head -n 10

实测中,WSL2 Ubuntu 24.04 自带 man-db 2.12.0 和 texinfo 7.1,两条命令均直接输出,无需额外安装。

三、–help:参数速查

绝大多数 GNU 工具都遵循 --help 约定,输出当前命令的完整选项列表 [3]。它比手册页更短,适合在终端里快速确认某个长选项的写法。

ls --help | head -n 5

输出会显示 Usage: 行和常用选项,如 -a, --all、-l 等。注意部分老旧工具或非 GNU 工具(如 busybox)可能只支持 -h 或不支持 --help。

四、whatis / apropos / type:快速定位

whatis 查 whatis 数据库,返回单行说明,适合快速确认命令用途。apropos 是全索引搜索,会把关键词与手册描述做正则匹配。type 和 command -v 是 shell 内置命令,用于判断命令类型和可执行文件位置 [4]。

whatis man
apropos man | head -n 5
type man
command -v man

实测输出:whatis man 返回 man (1) - an interface to the system reference manuals;type man 返回 man is hashed (/usr/bin/man);command -v man 返回 /usr/bin/man。

五、排错、局限与回滚

现象 原因 处理
man: command not found 未安装 man-db apt-get install man-db
info: command not found 未安装 texinfo apt-get install texinfo
whatis: command not found 未安装 man-db 或数据库为空 安装后运行 mandb
apropos 无结果 whatis 数据库为空 同上,先建库
--help 乱码或缺失 非 GNU 工具或 LANG 问题 改用 man 或查看项目文档

局限性

  • man/info 依赖手册数据库,最小容器里经常缺失。
  • apropos 和 whatis 共用同一数据库,初次安装后需 mandb 建库。
  • --help 不是 POSIX 强制项,部分工具仅支持 -h。
  • WSL2 与原生 Linux 行为一致,上述命令均可直接使用。

回滚 / 撤销

本文不涉及系统配置或文件修改,无需回滚。

实测记录

  • 环境:WSL2 Ubuntu 24.04,内核 5.15,默认 shell bash 5.2。
  • 命令版本:man 2.12.0、texinfo 7.1、coreutils 9.4。
  • man ls:正常输出 LS(1) 手册页前 5 行。
  • info ls:正常输出 coreutils.info 的 ls 节点。
  • ls --help:正常显示 Usage 及常用选项。
  • whatis man、apropos man、type man、command -v man:均返回预期结果。

六、FAQ

Q1:man 和 info 有什么区别? man 输出固定格式的纯文本分页,适合快速查阅;info 是超文本节点,支持跳转和交叉引用,适合阅读长手册。

Q2:为什么 apropos 搜不到结果? 通常是因为 whatis 数据库还没建立。执行 sudo mandb 后重试即可。

Q3:--help 和 man 哪个更权威? --help 是程序自身输出的参数说明,最贴近当前二进制版本;man 是系统手册,可能滞后于已安装版本。两者结合使用最稳妥。

Q4:type 能识别所有命令吗? type 是 shell 内置,只能识别 shell 已知的类型(alias、builtin、file、function)。对于外部二进制,它会显示路径;对于找不到的命令,返回 not found。

Q5:在 Docker 最小镜像里这些命令能用吗? man/info 通常未安装,--help 一般可用。需要精读手册时,建议挂载宿主机手册或在构建阶段安装 man-db 和 texinfo。


参考资料

文中主要命令已在 WSL Ubuntu(24.04)实测并核对其在 Debian 系与通用发行版的文档口径。