2.6 命令速查参考页
类型:参考页,不要求顺序阅读
适用范围:Bash/Zsh 常用交互操作;示例优先按 GNU/Linux 验证,PowerShell 语法不同
身份与命令来源
| 目标 | 命令 | 注意 |
|---|---|---|
| 当前用户 | whoami | 输出随账户变化 |
| 当前 Shell 进程 | ps -p $$ -o comm= | $SHELL 通常是登录 Shell |
| 命令类型和所有候选 | type -a name | 能看别名、函数和内建命令 |
| 可调用的首个命令 | command -v name | 跨 Shell 通常比 which 稳妥 |
| Bash 内建帮助 | help cd | 只适用于 Bash 内建命令 |
导航
| 目标 | 命令 |
|---|---|
| 当前目录 | pwd |
| 列出条目 | ls |
| 包含隐藏条目和详情 | ls -la |
| 进入目录 | cd path |
| 上一级 | cd .. |
| 上一个目录 | cd - |
| 家目录 | cd |
~ 通常展开为家目录,. 是当前目录。引用路径变量:cd "$dir"。
文件与目录
| 目标 | 命令 | 注意 |
|---|---|---|
| 临时目录 | workdir=$(mktemp -d) | 记录并在结束后清理 |
| 建目录 | mkdir -p a/b | -p 同时创建父目录 |
| 建空文件/更新时间 | touch file | 已有内容不会被清空 |
| 精确写一行 | printf '%s\n' text > file | > 会覆盖 |
| 追加一行 | printf '%s\n' text >> file | >> 追加 |
| 复制文件 | cp -- src dst | -- 结束选项解析 |
| 移动或改名 | mv -- old new | 可能覆盖已有目标,依选项而定 |
| 删文件 | rm -- file | 通常不进回收站 |
| 删空目录 | rmdir dir | 非空时拒绝 |
| 递归复制 | cp -R -- src dst | 元数据保留取决于选项和平台 |
环境与 PATH
| 目标 | 命令 |
|---|---|
| 当前 Shell 变量 | NAME=value |
| 导出给新子进程 | export NAME |
| 按字面打印变量 | printf '%s\n' "$NAME" |
| 临时添加工具目录 | PATH="$dir:$PATH"; export PATH |
| 删除变量 | unset NAME |
启动文件因 Bash/Zsh、登录/交互模式和系统而异。不要盲目覆盖或重复追加 ~/.bashrc、~/.profile、~/.zshrc。
通配符与引用
| 写法 | 含义 |
|---|---|
*.log | 任意 .log 名称 |
file-?.txt | ? 匹配一个字符 |
file-[13].txt | 匹配 1 或 3 |
"$path" | 参数展开后仍保持一个参数 |
-- "$path" | 防止以 - 开头的路径被当作选项 |
未匹配通配符的行为因 Shell 和选项而异。批处理先打印目标;改扩展名不会转换文件格式。
标准流、管道与重定向
| 目标 | 写法 |
|---|---|
| 覆盖标准输出 | command >out.log |
| 追加标准输出 | command >>out.log |
| 单独保存标准错误 | command 2>err.log |
| 合并输出和错误 | command >all.log 2>&1 |
| 连接两个程序 | `left |
| Bash 管道任一段失败可见 | set -o pipefail |
重定向从左到右执行,2>&1 >out.log 与 >out.log 2>&1 不等价。管道默认只连接标准输出。
删除前一分钟
bash
pwd
ls -ld -- "$target"
find "$target" -print这里的 $target 必须先设为你准备检查的路径;以上只是只读检查片段。确认变量非空、路径正确、范围最小后才删除。不要执行危险命令来测试系统是否会保护你。
需要查细节时
- GNU Bash:Shell Expansions 解释花括号、变量、命令、文件名和进程替换的顺序。
- GNU Bash:Redirections 给出文件描述符与从左到右处理重定向的完整规则。
- GNU Findutils:Safe File Name Handling 说明
-print0为什么能保留特殊文件名。 - Linux
pgrep(1)列出 procps 实现的选项;macOS 使用自己的手册页核对差异。
→ 打开隔离练习