系统相关
首页 > 系统相关> > shell算数运算

shell算数运算

作者:互联网

整数运算

命令方式

运算符方式

$((运算式))$[运算式]

a=1 
b=2
c=$(($a + $b))
d=$[$a + $b]

浮点运算

shell/bash不支持浮点运算,如果需要进行浮点运算,需要借助awkbc处理。

awk

# 加
f=$(awk 'BEGIN{print 4.5+3.4 }')
echo ${f}

# 减
f=$(awk 'BEGIN{print 4.5-3.4 }')
echo ${f}

# 乘
f=$(awk 'BEGIN{print 4.5*3.4 }')
echo ${f}

# 除
f=$(awk 'BEGIN{print 4.5/3.4 }')
echo ${f}

# 混合
f=$(awk 'BEGIN{print (4.5-3.4)*2+3 }')
echo ${f}

# 传递外部变量
f=$(awk -v x=var1 -v y=var2 'BEGIN{print x+y }')
echo ${f}

# awk判断小数点后的位数
num=6.6666; echo $num | awk 'BEGIN{FS="."}{print length($2)}'

# 比较大小(如果num1>num2打印输出0,否则输出1)
awk -v num1=6.6 -v num2=5.5'BEGIN{print(num1>num2)?"0":"1"}'

bc

# 加
f=$(echo "4.3+2.5"|bc)
echo ${f}

# 减
f=$(echo "4.3-2.5"|bc)
echo ${f}

# 乘
f=$(echo "4.30*2.50"|bc)
echo ${f}

# 除
f=$(echo "4.3/2.5"|bc)
echo ${f}

# 混合运算
f=$(echo "2.2/(2.2-1.1)*2+1.1"|bc)
echo ${f}

变量声明为数字

标签:BEGIN,shell,运算,bc,echo,3.4,awk,算数,print
来源: https://www.cnblogs.com/sinicheveen/p/16502112.html