linux shell 浮点解决方案

来源:互联网 发布:乐高淘宝店 编辑:程序博客网 时间:2024/06/03 02:25

为了解决bash中数学运算的整数限制,本文将介绍如何使用bash内建的计算器,简称bc。

bc基本用法

bash计算器其实是允许我们在命令行输入浮点表达式、解释表达式、计算并返回结果的一种编程语言,bash计算器能够识别

  • 数字
  • 变量
  • 注释
  • 表达式
  • 编程语句
  • 函数
    我们可以在命令行中通过bc命令来访问bash计算器
    这里写图片描述
    退出bash计算器使用quit命令
    注意:浮点运算是由一个内置的名为scale的变量控制的,你必须设置scale的值得到你想要小数点后的位数,例如上图中23/12的结果在设置和未设置scale的情况下结果完全不同
    bash计算器除了可以直接使用普通数字之外还可以使用变量

在脚本中使用bc

基本格式:
variable=`echo “options ; expression” | bc`
注意:上边的语句是在反引号中的

示例

var=100var1=`echo " scale=4 ; $var / 3 " | bc`

运算结果为:33.3333(scale=4所以得到四位小数)

多行表达式的bc计算:内联输入重定向

示例

#!/bin/bashvar1=3var2=4var3=`bc << EOFscale = 4a = $var1 + $var2b = $var1 * $var2(a + b) * 2EOF`echo $var3