0997-使用shell进行数学运算

1、介绍
在Bash shee环境中,可以使用let、(())和[]执行基本的算术操作。
而且在进行高级操作时,expr和bc这两工具也会非常有用。

2、可以用普通的变量赋值方法定义数值,这时,它会被存储为字符串。
然而,我们可以用一些方法使它能像数字一样进行计算。
#!/bin/bash
no1=4;
no2=5;

let命令可以直接执行基本的算术操作。当使用let时,变量名之前不需要使用$,如:
let result=no1+no2
echo $result

自加操作
let no1++
自减操作
let no1--

3、操作符[]的使用方法和let命令类似
result=$[no1 +no2]
在[]中也可以使用$前缀,例如:
result=$[$no1+5]

也可以使用(()),但是(())时,变量名之前需要加上$
result=$((no1 + no2))
expr同样可以用于基本算术操作:
result='expr 3+4'
result=$(expr $no1 +5)

4、以上这些方法都是对整形进行运算,而不支持浮点型


5、bc是一个用于数学运算的高级工具,这个精密计算器包含了大量的选项。
我们可以借助它执行浮点运算并应用一些高级的函数:
echo "4 * 0.56" | bc

no=54;
result ='echo "$no * 1.5" | bc'
echo $result
其它参数可以置于要执行的具体操作之前,同时以分号作为定界符,通过stdin传递给bc。

6、设置小数精度
下面的例子中,参数scale=2将小数位个数设置为2
echo "scale=2;3/8 | bc"

7、进制转换
no=100
echo "obase=2;$no" | bc

no=1100100
echo "obase=10;ibase=2:$no" | bc

8、计算平方根
echo "sqrt(100)" | bc
echo "10^10 |bc"

9、

你可能感兴趣的:(shell)