Shell中的運算子
- 語法
1)$((運算式)) 或 $[運算式]
2)expr +, -, *, /, % 加, 減, 乘, 除, 取餘
注意:expr運算子間要有空格
1. 演示$((運算式))進行加減乘除取餘
[root@localhost ~]# echo $((1+5)) 6 [root@localhost ~]# echo $((3*4)) 12 [root@localhost ~]# echo $((4/2)) 2 [root@localhost ~]# echo $((3%2)) 1 [root@localhost ~]# echo $((10-4)) 6 [root@localhost ~]# a=$((2*4)) [root@localhost ~]# echo $a 8
2.演示$[運算式]進行加減乘除取餘
[root@localhost ~]# echo $[3+4] 7 [root@localhost ~]# echo $[4-3] 1 [root@localhost ~]# echo $[3*4] 12 [root@localhost ~]# echo $[4/2] 2 [root@localhost ~]# echo $[4%2] 0 [root@localhost ~]# echo $[3%2] 1 [root@localhost ~]# b=$[5/2] [root@localhost ~]# echo $b 2
3. 演示expr進行加減乘除取餘
[root@localhost ~]# expr 7 + 3 10 [root@localhost ~]# expr 7+3 7+3 [root@localhost ~]# expr 7 - 3 4 [root@localhost ~]# expr 7 \* 3 21 [root@localhost ~]# expr 4 / 2 2 [root@localhost ~]# expr 4 % 2 0 [root@localhost ~]# expr 7 / 2 3 [root@localhost ~]# expr 7 % 2 1 [root@localhost ~]# expr `expr 2 + 3` \* 4 20 [root@localhost ~]# a="expr 3 + 4" [root@localhost ~]# echo $a expr 3 + 4 [root@localhost ~]# a=`expr 3 + 4` [root@localhost ~]# echo $a 7 [root@localhost ~]# a=$(expr 2 \* 4) [root@localhost ~]# echo $a 8 [root@localhost ~]# a=$[(1+6)*2] [root@localhost ~]# echo $a 14
4. 透過指令碼傳參,在指令碼里面計算並輸出
寫指令碼sum.sh
#!/bin/bash echo '========================測試$(())==========================' sum1=$(($1+$2)) echo sum1=$sum1 echo '========================測試$[]==========================' sum2=$[$1+$2] echo sum2=$sum2 echo "========================測試expr==========================" exprSum=`expr $1 + $2` echo exprSum=$exprSum
執行指令碼bash sum.sh 2 8
========================測試$(())========================== sum1=10 ========================測試$[]========================== sum2=10 ========================測試expr========================== exprSum=10