01 帮助与基础

学习目标

  • 知道如何查询命令帮助。
  • 能查看历史命令并复用。
  • 能清理终端屏幕、输出文本和变量。
  • 能判断命令来自 alias、function、builtin 还是外部程序,并保存退出码。

命令总览

命令用途含义基本用法例子
man查看命令手册manual 的缩写,显示命令的完整说明man 命令名man ls
--help查看简短帮助许多 GNU 与第三方外部命令支持;不是 POSIX 统一要求命令 --helpcp --help
history查看历史命令列出当前 shell 执行过的命令history 或 history 数量history 20
clear清屏清除当前终端显示内容clearclear
printf按格式输出行为比 echo 更可预测printf '格式' 参数printf '%s\n' "$HOME"
command -v查询命令解析结果返回 Shell 将使用的命令位置或类型线索command -v 名称command -v python3
type查看 Bash 命令类型显示 alias、function、builtin 或文件type -a 名称type -a cd

常用场景

查看一个命令怎么用:

man tar
tar --help

查看最近执行过的命令:

history 30

输出文本和环境变量:

printf '%s\n' 'hello linux'
printf 'path_entries_are_set=%s\n' "${PATH:+yes}"

清理终端屏幕:

clear

新手注意

  • man 页面里可以按 / 搜索关键词,按 q 退出。
  • 许多 GNU 与第三方外部命令用 --help 快速列出参数,但 POSIX 不统一规定这个选项;Bash builtin 优先用 help 名称 或 Shell 手册,BSD/macOS 以本机 man 为准。
  • history 只显示历史,不会自动执行历史命令;重新执行历史命令前要确认内容安全。
  • 历史可能包含 URL、参数和误输入的秘密;不要把 token 直接写在命令行,也不要公开粘贴完整 history。
  • 只查询允许公开的变量;裸 env 或打印完整 PATH/代理配置可能暴露本机信息。
  • $? 只保存最近一条前台 pipeline 的退出状态,应立即复制到变量再运行下一条命令。

最小练习

type -a -- cd
command -v -- grep
grep -q -- 'needle' /dev/null
grep_rc=$?
printf 'grep_rc=%s\n' "$grep_rc"

说明 cd 与 grep 分别是什么类型,并查 GNU grep 文档解释返回 1 的含义。环境、引号与展开先完成 Linux 环境与 Shell 基础。

参考资料