Shell 脚本浮点运算

Posted Linux爱好者

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Shell 脚本浮点运算相关的知识,希望对你有一定的参考价值。


来源:伯乐在线 - answer

链接:http://blog.jobbole.com/105409/


本文将介绍几种Linux下通过Shell脚本进行浮点数计算的方法。


Why


Bash Shell本身不具备处理浮点计算的能力, 如expr命令只支持整数运算 :


#!/bin/bash

a=59

b=60

expr $a / $b


运行结果 :


$ ./cal.sh

0

$


Plan A


使用bc进行处理。


代码 :


#!/bin/bash

 

a=59

b=60

echo "scale=4; $a / $b" | bc


运行结果 :


$ ./bc.sh

.9833

$


scale表示结果的小数精度。


Plan B


使用awk进行处理。


代码 :


#!/bin/bash

a=59

b=60

awk 'BEGIN{printf "%.2f\n",('$a'/'$b')}'


运行结果 :


$ ./awk.sh

0.98

$


Compare


使用bc :



使用awk :


Shell 脚本浮点运算


可以看出使用awk的效率更高,特别是运算次数比较大时。


专栏作者简介 ( )


answer:answer不是答案

Shell 脚本浮点运算

打赏支持作者写出更多好文章,谢谢!





【今日微信公号推荐↓】

更多推荐请看


以上是关于Shell 脚本浮点运算的主要内容,如果未能解决你的问题,请参考以下文章

shell脚本相关关系浮点循环

shell脚本基础

if 判断语句与shell运算

shell脚本中的算术运算

Lua 浮点运算

Shell脚本处理浮点数的运算和比较实例