一、数值运算
A:整数运算
expr
乘法操作应采用 \* 转义,避免被作为Shell通配符;参与运算的整数值与运算操作符之间需要以空格分开,引用变量时必须加$符号。
例:X=1234 //定义变量
expr $X + 78 //加法expr $X + 78 //加法
expr $X - 78 //减法
expr $X \* 78 //乘法,操作符应添加\转义
expr $X / 78 //除法,仅保留整除结果
expr $X % 78 //求模
$[ ] 或$(())
乘法操作*无需转义,运算符两侧可以无空格;引用变量可省略 $ 符号;计算结果替换表达式本身,可结合echo命令输出。
例:echo $[X+78]
echo $[X-78]
echo $[X*78]
echo $[X/78]
echo $[X%78]
let
expr或$[]、$(())方式只进行运算,并不会改变变量的值;而let命令可以直接
对变量值做运算再保存新的值。因此变量X=1234,在执行let运算后的值会变
更,另外,let运算操作并不显示结果,但是可以结合echo命令来查看:
例:let y=X+22
echo $y
let X++; echo $X # X++(X=X+1)
let X--; echo $X # X--(X=X-1)
let X+=78 ; echo $X # X+=78(X=X+78)
let X-=78 ; echo $X # X-=78(X=X-78)
let X*=78 ; echo $X # X*=78(X=X*78)
let X/=78 ; echo $X # X/=78(X=X/78)
let X%=78 ; echo $X # X%=78(X=X%78)
B:小数运算
bc 交互式
先执行bc命令进入交互环境,然后再输入需要计算的表达式。
例:bc
12.34+56.78 //加法
12.34-56.78 //减法
12.3456.78 //乘法
12.34/56.78 //除法
quit //退出交互计算器
echo