通过shell进行数学运算

  • Post author:
  • Post category:其他


通过shell进行数学运算


可以用普通的变量赋值方法定义数值,这时会被存储为字符串,但是我们可以像数字一样处理。

在bash shell环境中,可以利用let、(  )、[  ]、执行基本的算数操作。



let  a+=6

let  a-=6

等同于

let a=a+6

let a=a-6

操作符[ ]使用方法


a=$[1+1]



在[]中也可以使用$

a=$[$a+1]



expr使用方法:


result=’expr 3+3′

result=$(expr $nol+5)



但是以上的方法只能用于整数运算,而不支持浮点数



bc


bc是一个用于数学运算的高级工具,包含了大量选项

其他参数可以置于要置于要执行的具体操作

设定小数精度


echo “scale=2;3/8” | bc



0.37

参数scale=2将小数个位设置为2,所以将会输出带有两个小数位的数值



进制转换


#!/bin/bash

no=100

echo “obase=2;$no” | bc

#输出为1100100





#!/bin/bash

no=1100100

echo “obase=10;ibase=2;$no” | bc

#输出为100



计算平方和平方根



#!/bin/bash



echo “sqrt(100)” | bc #Square root

#100的平方根






#!/bin/bash



echo “10^10”  | bc #Square

#10的平方






版权声明:本文为wo84414612原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。