shell腳本中的浮點數計算
阿新 • • 發佈:2018-02-11
[ ] 編程語言 浮點 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腳本中的浮點數計算