shell下执行运算
2019-07-23 本文已影响0人
风华清
转载自:https://blog.csdn.net/wu020708/article/details/52312403
一、let:
使用let时,变量名之前不需要添加$
let result=val +val2
let val++
let val--
let val+=1
二、操作符:
[]:
result =$[ no1 + no2 ]
在[]中也可以使用$前缀
result =$[ $no1 + 1 ]
():
result =$(( no1 + 5 ))
三、expr:
result = `expr 3 + 4 `
result =$(expr $no1 + 5)
注:以上方法只支持整数运算,不支持浮点。
bc:
一个数学运算的高级工具,包括大量选项。可以作一些浮点和高级运算
echo " 2 * 0.012" | bc
result =`echo "$no * 0.023" | bc `
设定小数精度:
使用参数scale
echo "scale=4;1/4" | bc #设定小数位4位,不够的补零
进制转换:
#!/bin/bash
no=100
echo "obase=2;$no" | bc #i结果:1100100
no=1100100
echo "obase=10;ibase=2;$no" | bc #结果:100
计算平方:
echo "sqrt(100)" | bc
echo "10^10" | bc