1. 程式人生 > >shell腳本中的浮點數計算

shell腳本中的浮點數計算

[ ] 編程語言 浮點 ons entos tex tails 設置 ont

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腳本中的浮點數計算