27 - 流程控制:使用 if 进行分支操作
1. test 命令
在使用if时,最常搭配的命令是test。test命令可执行各种检查和比较,有两种等价形式:
-test expression
- 更常用的[ expression ]
这里的expression是一个可被评估为真或假的表达式。当表达式为真时,test命令返回退出状态码 0;为假时返回 1。
2. 文件表达式
以下表达式用于评估文件状态:
| 表达式 | 为真的条件 |
| — | — |
|file1 -ef file2|file1和file2具有相同的 inode 编号(通过硬链接指向同一文件) |
|file1 -nt file2|file1比file2新 |
|file1 -ot file2|file1比file2旧 |
|-b file| 文件存在且为块特殊(设备)文件 |
|-c file| 文