一、expr命令
[root@localhost mm]# a=10
[root@localhost mm]# expr $a+10
10+10
[root@localhost mm]# expr $a + 10
20
[root@localhost mm]# expr $a - 10
0
[root@localhost mm]# expr $a * 10
expr: syntax error
[root@localhost mm]# expr $a \* 10 (*必须加转译字符)
100
[root@localhost mm]# expr $a / 10
1
[root@localhost mm]# expr $a % 10
0
二、$[] 和 $(()) 表达式
[root@localhost mm]# echo $[a+10]
20
[root@localhost mm]# echo $[a-10]
0
[root@localhost mm]# echo $[a*10]
100
[root@localhost mm]# echo $[a/10]
1
[root@localhost mm]# echo $[a%10]
0
[root@localhost mm]# echo $((a+10))
20
[root@localhost mm]# echo $((a*10))
100
三、let命令(let命令在执行后会保存新的值)
[root@localhost mm]# let a+=5
[root@localhost mm]# echo $a
15
[root@localhost mm]# echo $a-=10
15-=10
[root@localhost mm]# echo $a
5
[root@localhost mm]# let a*=10
[root@localhost mm]# echo $a
50
[root@localhost mm]# let a/=10
[root@localhost mm]# echo $a
5
[root@localhost mm]# let a%=10
[root@localhost mm]# echo $a
5
四、小数运算工具bc
[root@localhost mm]# echo "scale=4;1.23*4.5" | bc
5.535
[root@localhost mm]# echo "scale=4;1.234.5" | bc
(standard_in) 1: syntax error
[root@localhost mm]# echo "scale=4;1.23+4.5" | bc
5.73
五、计算两个数的加减乘除
[root@localhost mm]# cat westos1.sh
#!/bin/bash
read -t 5 -p "请输入两个整数:" a b
echo "a+b=$[a+b]"
echo "a-b=$[a-b]"
echo "a*b=$[a*b]"
echo "a/b=$[a/b]"
echo "a**b=$[a**b]"
echo "a%b=$[a%b]"
[root@localhost mm]# sh westos1.sh
请输入两个整数:2 5
a+b=7
a-b=-3
a*b=10
a/b=0
a**b=32