包括如下5类运算符:
- 算数运算符
- 字符串运算符
- 文件测试运算符
- 关系运算符
- 布尔运算符
算术运算符
如下命名只支持数字运算
命令 |
含义 |
-eq |
相等 |
-ne |
不等 |
-gt |
大于 |
-ge |
大于等于 |
-lt |
小于 |
-le |
小于等于 |
字符串运算符
命令 |
含义 |
= |
相等 |
!= |
不等 |
> |
字典排序,[ $a \> $b ] 或 [[ $a > $b ]] $a 在 $b 之后返回true |
> |
字典排序,[ $a \> $b ] 或 [[ $a > $b ]] $a 在 $b 之前返回true |
!= |
不等 |
-z |
字符串长度为0为true |
-n |
字符串长度不为0,返回true |
$ |
字符串不为空返回true |
文件测试运算符
常用的如下,完整的请参考 https://www.runoob.com/linux/linux-shell-basic-operators.html
命令 |
含义 |
-f |
是文件且存在返回true |
-d |
是目录且存在返回true |
-e |
文件或者目录存在返回true |
-s |
文件存在且不为空,返回true |
-r |
文件可读返回true |
-w |
文件可写返回true |
-x |
文件可执行返回true |
逻辑运算符
命令 |
含义 |
&& |
逻辑与,在 [[]] 中使用 |
| | |
逻辑或,在 [[]] 中使用 |
布尔运算符
命令 |
含义 |
-o |
与或,在[] 中使用 |
-a |
与,在[] 中使用 |
! |
非 |