zoukankan      html  css  js  c++  java
  • shell脚本中的小数运算

      shell脚本中直接进行小数的加减乘除操作,会报错integer expression expected。

           可以用2种方式解决,借助bc计算器,但是容器方式运行时,容器中可能没有安装bc,就需要引入bc,重新制作镜像。

           也可以用第2种方式awk。

    a=3.2  
    b=1.5  
    c=`echo "scale=3;$a + $b"|bc` 

      scale=3;表示小数的位数为3位

    c=`awk -v x=2.45 -v y=3.123 'BEGIN{printf "%.2f
    ",x*y}'`

          %.2f表示小数的位数为2位

            整数的运算

    n1=`expr $x + $y`
    n2=`expr $x  - $y`
    n3=`expr $x * $y`  #使用expr时 符号* 需要转义
    n4=`expr $x / $y`
    n5=`expr $x % $y`

            ((n1=$x+$y))  等价于 n1=`expr $x + $y`

    ((n1=$x+$y)) 
    ((n2=$x-$y)) 
    ((n3=$x*$y)) 
    ((n4=$x/$y)) 
    ((n5=$x%$y)) 
  • 相关阅读:
    最大流模板
    大数相加
    . Number throry
    掷骰子 dp
    Java常用类库2
    简单注册功能(未连接数据库)
    Java常用类库
    人机猜拳
    租车系统
    Java一些概念
  • 原文地址:https://www.cnblogs.com/lnlvinso/p/13460810.html
Copyright © 2011-2022 走看看