3.1、条件表达式
表达式 | 示例 |
[expression] | [ 1 -eq 1 ] |
`expression` | ` 1 -eq 1 ` |
test expression | test 1 -eq 1 ,等同于[] |
3.2整数比较符
比较符 | 描述 | 示例 |
-eq, equal | 等于 | [ 1 -eq 1]为true |
-ne,not equal | 不等于 | [ 1 -ne 1]为false |
-gt,greater than | 大于 | [ 2 -gt 1 ]为true |
-lt,lesser than | 小于 | [ 2 -gt 1 ]为false |
-ge,greater or equal | 大于等于 | [ 2 -gt 1 ]为true |
-le,lesser or equal | 小于等于 | [ 2 -gt 1 ]为false |
3.3、字符串比较符
运算符 | 描述 | 示例 |
== | 等于 | ["a"=="a"]为true |
!= | 不等于 | [ "a" != "a"]为false |
> | 大于,判断字符串时根据ASCII码表顺序,不常用 |
在[]表达式中:[ 2 > 1 ]为true 在[[]]表达式中:[[ 2 > 1 ]]为true 在(())表达式中:(( 3 > 2 ))为true |
< | 小于,判断字符串时根据ASCII码表顺序,不常用 |
在[]表达式中:[ 2 < 1 ]为false 在[[]]表达式中:[[ 2 < 1 ]]为false 在(())表达式中:(( 3 < 2 ))为false |
>= | 大于等于 | 在(())表达式中:((3>=2))为true |
<= | 小于等于 | 在(())表达式中:(( 3 <= 2 ))为false |
-n | 字符串长度不等于0为真 |
VAR1=1;VAR2="" [ -n "$VAR1" ]为true [ -n "$VAR2" ]为false |
-z | 字符串长度等于0为真 |
VAR1=1;VAR2="" [ -z "$VAR1" ]为false [ -z "$VAR2" ]为true |
str | 字符串存在为真 |
VAR1=1;VAR2="" [ $VAR1 ]为true [ $VAR2 ]为false |
需要注意的是,使用-z或-n判断字符串长度时,变量要加双引号。
举例说明: