shell 包含三个命令:bc、expr、let可用于数值计算。
输入:整数,let和expr都无法进行浮点运算,但是bc和awk可以。
输出:bc、expr可直接显示计算结果;let则丢弃计算结果,可通过传递结果到变量,取变量值获得计算结果。
bc允许运算量和运算符之间无空格,let 不允许有空格,expr运算量和运算符之间必须有空格。
let,expr,bc都可以用来求模,运算符都是%,而let和bc可以用来求幂,运算符不一样,前者是**,后者是^
//求模 $ expr 5 % 2 $ let i=5%2 $ echo $i $ echo 5 % 2 | bc $ ((i=5%2)) $ echo $i //求幂 $ let i=5**2 $ echo $i $ ((i=5**2)) $ echo $i $ echo "5^2" | bc $ echo 1/100 | bc -l