基本运算
expr:表达式计算工具
val=`expr 2 + 2`
echo "两数和:$val"
注:
- 表达式和运算符之间要有空格2+2不对,2 + 2才对
- 完整的表达式需要被``包裹
1、算术运算符
假定变量a=10,b=20
图 1注:
- 乘号(*)前面必须要有反斜杠(\)
- 条件表达式要放在方括号内,必须要有空格[ $a == $b ]
示例:
if [ $a == $b ]
then
echo "a等于b"
fi
if [ $a != $b ]
then
echo "a不等于b"
fi
2、关系运算符
运算符 | 说明 | 示例 |
---|---|---|
-eq | 检测两数,相等返回true | [ $a -eq $b ] |
-ne | 检测两数,不相等返回true | [ $a -ne $b ] |
-gt | 检测左数>右数,返回true | [ $a -gt $b ] |
-lt | 检测左数<右数,返回true | [ $a -lt $b ] |
-ge | 检测左数>=右数,相等返回true | [ $a -ge $b ] |
-le | 检测左数<=右数,相等返回true | [ $a -le $b ] |
示例:
if [ $a -eq $b ]
then
echo "相等"
else
echo "不相等"
fi
3、布尔运算符
运算符 | 说明 | 示例 |
---|---|---|
! | false返回true,true返回false | [ !false ] |
-o | 或运算,有true则true | [ $a -lt 20 -o $b -eq 10 ] |
-a | 与运算,有false则false | [ $a -lt 20 -a $b -eq 10 ] |
4、逻辑运算符
运算符 | 说明 | 示例 |
---|---|---|
&& | and | [[ $a -lt 20 && $b -eq 10 ]] |
|| | or | [[ $a -lt 20 || $b -eq 10 ]] |
5、字符串运算符
运算符 | 说明 | 示例 |
---|---|---|
= | 相等true | [ $a = $b ] |
!= | 不等true | [ $a != $b ] |
-z | 检测字符串长度为0,返回true | [ -z $a ] |
-n | 检测字符串长度不为0,返回true | [ -n "$a" ] |
$ | 检测字符串不为空,返回true | [ $a ] |
网友评论