命令行内置帮助(最常用)
这是最直接、最快捷的帮助方式,主要针对单个命令。

man (Manual)
man 命令是查看命令、函数、配置文件等手册页的最标准、最强大的工具。
语法:
man [选项] [命令/函数/文件...]
常用选项:
-k:基于关键词搜索手册页。man -k keyword,它会在手册页的名称和简介中搜索keyword。-f:与whatis命令相同,显示命令的简短描述。-a:显示所有匹配的手册页,而不仅仅是第一个。
核心操作(在 man 页面中):

/keyword:向下搜索keyword。?keyword:向上搜索keyword。n:跳到下一个搜索结果。N:跳到上一个搜索结果。q:退出man页面。空格或f:向下翻一页。b:向上翻一页。上下箭头:上下滚动一行。g:回到手册页的开头。G:跳到手册页的结尾。
示例:
# 查看 ls 命令的手册页 man ls # 搜索所有和 "network" 相关的手册页 man -k network # 查看 printf 函数的手册页 (3 代表库函数) man 3 printf
手册页的章节划分:
man 命令的手册页被分为 9 个标准章节,了解它们可以帮助你更快地找到你需要的信息:
- 1:用户命令 (如
ls,cd,grep) - 2:系统调用 (如
fork,open) - 3:库函数 (C 语言标准库,如
printf,malloc) - 4:设备和特殊文件 (如
/dev/null,/dev/sda) - 5:配置文件格式 (如
/etc/passwd,/fstab) - 6:游戏和屏保
- 7:杂项 (如
macro,package) - 8:系统管理命令和守护进程 (如
ifconfig,systemd) - 9:Linux 内ernals (内核例程)
如果一个命令名在多个章节中都存在(printf 在章节1和3都有),你可以用 man 章节号 命令名 来指定查看哪个,如 man 3 printf。
--help 或 -h
大多数命令和程序都支持 --help 选项,用于快速显示该命令的用法摘要、常用选项和简要说明,这是比 man 更快的方式,但信息量较少。

语法:
command --help # 或者 command -h
示例:
# 查看 ls 命令的快速帮助 ls --help # 查看 grep 命令的快速帮助 grep --help
文件和命令信息查询
这类命令不直接提供“使用方法”,而是告诉你命令或文件本身是什么。
whatis
whatis 显示命令或函数的单行简短描述,它实际上是 man -f 的一个快捷方式。
语法:
whatis [命令/函数...]
示例:
# 查看 ls 和 grep 命令的简短描述 whatis ls whatis grep
apropos
apropos 基于关键词搜索手册页的名称和简介,并显示匹配的命令列表,它实际上是 man -k 的一个快捷方式。
语法:
apropos [关键词...]
示例:
# 搜索所有和 "copy" 相关的命令 apropos copy
type
type 命令用于判断一个命令是“内置于 shell”、“外部命令”还是“别名”。
语法:
type [命令名...]
示例:
# 判断 ls 命令的类型 type ls # 输出: ls is aliased to `ls --color=auto' (可能是个别名) # 判断 cd 命令的类型 type cd # 输出: cd is a shell builtin (是 shell 内置命令) # 判断 grep 命令的类型 type grep # 输出: grep is /usr/bin/grep (是外部命令)
which
which 命令用于查找并显示一个外部命令的完整路径。
语法:
which [命令名...]
示例:
# 查找 ls 命令的安装路径 which ls # 输出: /usr/bin/ls # 查找 grep 命令的安装路径 which grep # 输出: /usr/bin/grep
info
info 命令是 GNU 项目提供的另一个帮助系统,它提供的是超文本格式的文档,比 man 更详细,并且有链接可以跳转到相关主题,对于复杂的 GNU 工具(如 coreutils, bash, make),info 文档通常是更权威和全面的资料。
语法:
info [选项] [主题...]
核心操作(在 info 页面中):
q:退出info。上下箭头/PageUp/PageDown:滚动页面。Tab:跳转到下一个链接(通常是一个星号 )。Enter:进入链接。d:回到文档的目录页。u:返回上一层。
示例:
# 查看 ls 命令的 info 文档 info ls # 查看 bash 的 info 文档 info bash
Shell 内置命令帮助
type 命令可以帮助你识别哪些是 shell 内置命令,对于这些命令,man 和 --help 可能无法提供帮助,你需要使用 shell 特定的帮助命令。
help
help 是一个 shell 内置命令,用于显示 shell 内置命令的帮助信息。
语法:
help [内置命令名]
示例:
# 显示所有 shell 内置命令的列表 help # 显示 cd 内置命令的帮助信息 help cd # 显示 for 循环的帮助信息 help for
系统和硬件信息查询
这类命令帮助你了解当前系统的运行状态和硬件配置。
uname
uname 用于打印基本的系统信息。
常用选项:
-a:(all) 显示所有信息。-s:(kernel name) 显示内核名称(默认)。-r:(kernel release) 显示内核版本。-m:(machine hardware) 显示机器的硬件架构。
示例:
# 显示所有系统信息 uname -a # 只显示内核版本 uname -r
dmesg
dmesg 用于显示或控制内核的环形缓冲区消息,启动时的硬件检测信息、驱动加载信息等都会记录在这里。
常用选项:
-T或--time-format:以人类可读的格式显示时间戳。-l或--level:过滤指定级别的消息。
示例:
# 查看最新的内核消息(通常是启动信息) dmesg | tail # 查看带有时间戳的内核消息 dmesg -T | grep -i usb
lspci 和 lsusb
lspci:列出所有 PCI 设备(如显卡、网卡、声卡等)。lsusb:列出所有 USB 设备(如鼠标、U盘、打印机等)。
通常需要安装 pciutils 和 usbutils 包。
示例:
# 列出所有 PCI 设备 lspci # 列出所有 USB 设备 lsusb # 以更详细的方式列出 PCI 设备 lspci -v
lsblk 和 df
lsblk:以树状结构列出所有块设备(硬盘、分区、光驱等),非常直观。df:显示文件系统的磁盘空间使用情况。
示例:
# 以树状结构列出块设备 lsblk # 显示所有挂载点的磁盘使用情况 df -h # -h 表示以人类可读的格式显示 (GB, MB 等)
总结与对比
| 命令 | 主要用途 | 信息量 | 优点 | 缺点 |
|---|---|---|---|---|
man |
查看标准手册页 | 最全面 | 权威、详细、标准 | 信息量大,查找稍慢 |
--help |
查看命令用法摘要 | 较少 | 快速、直接 | 不够详细,不适用于所有命令 |
info |
查看超文本格式的 GNU 文档 | 非常详细 | 结构化、有链接、更深入 | 界面不如 man 简洁,非所有命令都有 |
whatis |
查看命令的单行描述 | 最少 | 极速、一目了然 | 仅限名称和简介 |
apropos |
基于关键词搜索命令 | 适中 | 适合模糊查找 | 搜索结果需要进一步筛选 |
type |
判断命令类型(内置/外部/别名) | 元信息 | 快速诊断命令来源 | 不提供使用方法 |
which |
查找外部命令的路径 | 元信息 | 快速定位可执行文件 | 仅对外部命令有效 |
help |
查看 shell 内置命令帮助 | 适中 | 对 shell 内置命令有效 | 仅限 shell 内部使用 |
uname |
显示系统核心信息 | 系统信息 | 快速获取 OS 和内核信息 | 范围有限 |
dmesg |
查看内核消息日志 | 系统信息 | 查看底层硬件和驱动信息 | 输出量大,需要过滤 |
学习建议:
- 从
--help开始:对于任何不熟悉的命令,先尝试command --help,这是最快的方式。 - 精通
man:--help信息不够,立刻使用man,学会使用 搜索和q退出是基本技能。 - 利用
apropos:当你不知道具体命令名,只记得功能时,用apropos来搜索。 - 识别内置命令:
man找不到,用type看看是不是 shell 内置命令,如果是,就用help。 - 善用
info:对于复杂的 GNU 工具,info文档是宝藏,值得花时间学习。 - 掌握系统信息命令:
uname,dmesg,lsblk,df等是排查问题、了解系统的利器。
