您的位置:首页 > 运维架构 > Shell

shell脚本中的浮点数计算

2018-02-11 13:38 351 查看
bash数字计算——数字处理能力对任何一种编程语言都至关重要,可是对于bash shell脚本来说,这种能力很差,即使expr命令和$[ ]的形式也只能进行整数运算,无法完成对浮点数的运算。为了突破这种限制,引进了一种bash的浮点解决方案,就是内置bash计算器(bc)

一、bc介绍

bc实际上是一种编程语言,该语言允许在命令行输入浮点表达式,然后执行。
bc可以识别(浮点)数字,变量,表达式,编程语句,函数。
可以使用bc命令从shell提示符访问bc,quit退出bc:
[root@centos6 ~]# bc
bc 1.06.95
Copyright 1991-1994, 1997, 1998, 2000, 2004, 2006 Free Software Foundation, Inc.
This is free software with ABSOLUTELY NO WARRANTY.
For details type `warranty'.
1.25*3
3.75
quit
scale变量设置小数位位数,默认scale=0,当scale=4时,显示4位小数位的答案:

[root@centos6 ~]# bc -q
5/4
1
scale=4
5/4
1.2500
quit

二、在脚本中bc的用法

使用反引号运行bc命令
var=`echo "options;expression" |bc`
#!/bin/bash
var=`echo "scale=4;5/4" |bc`
echo $var
内置输入重定向运行bc命令
var=`bc << EOF
options
expression
EOF`

#!/bin/bash
var=`bc << EOF
scale=4
a=5
b=4
b/a
EOF`
echo $var
注意:bc中的变量只在bash计算器中有效,不能用在bc之外
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  shell 浮点数运算 bc