婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > Shell腳本處理浮點數的運算和比較實例

Shell腳本處理浮點數的運算和比較實例

熱門標簽:百度地圖標注錯了有責任嗎 江蘇云電銷機器人公司 打電話機器人接我是他的秘書 地圖標注員都是年輕人 揭陽智能電話機器人推薦 客服外呼系統怎么樣 華鋒e路航港口地圖標注 如果做線上地圖標注 河南信譽好的不封卡電話外呼系統

通過top命令看到的進程的CPU、內存的使用率的百分比是一個浮點數,我需要在寫腳本時對其進行處理,所以學習了一些,總結如下。

其實,Shell(這里是Bash)本身不具備處理浮點計算的能力,但是可以使用“bc”這個高精度的計算器工具來幫助,另外,也可以在Bash中調用“awk”腳本來處理浮點運算。

1. 用bc來處理計算(包括整型和浮點計算)

bc – An arbitrary precision calculator language
(1). 通常在Bash腳本中使用bc的范例格式為:
variable=$(echo “OPTIONS; OPERATIONS” | bc [options]) 即:echo “[選項];操作” | bc [選項]
(2). 在下面的腳本中,提到在第一個選項中,“scale”變量表示輸出中小數點后的精度,可以用于控制計算結果的精度;“ibase”和“obase”分別表示輸入和輸出數據的進制,可以用于數值進制的轉換。
(3). 浮點數的比較,如“if [ $(echo "$big > $small" | bc) -eq 1 ]”,將一個邏輯判斷式用管道傳給bc。如果結果為真則輸出1,否則輸出0,然后就可以利用這個結果進行進一步的操作了。
(4). bc本來是用一個文件作為輸入進行計算的(后面也有演示),所以可以將很復雜的計算寫到文件中,然后讓bc工具去處理到處計算結果。
注意一下:在使用除法運算符/時,要想保留小數,需要自己設置scale,否則默認時scale,小數點后時0位。

2. 使用awk來處理浮點計算和浮點數比較

不解釋過多了,寫了示例腳本如下,看懂了這個就會知道怎么處理浮點計算和浮點數比較了。

復制代碼 代碼如下:

#!/bin/bash
# author: Jay smile665@gmail.com>
# some examples for playing with floating point number.

# basic usage of 'bc' tool in Bash.
a=3.33
b=3.3
c=$(echo "$a + $b" | bc)
d=$(echo "$a * $b" | bc)
e=$(echo "scale=5; $a / $b" | bc)
echo "c=a+b=$a+$b=$c"
echo "d=a*b=$a*$b=$d"
echo "e=a/b=$a/$b=$e"

# "-l" parameter for 'bc' means using math library.
pi=$(echo "scale=10; 4*a(1)" | bc -l)
s=$(echo "s($pi/6)" | bc -l)
echo "pi=$pi"
echo "s=sin(pi/6)=$s"

# use more options of 'bc' tool
r=$(echo 'ibase=10;obase=2; 15+16' | bc)
echo "binary of (15+16) is $r"

# comparison for floating point numbers using 'bc'
big=100
small=99.9
if [ $(echo "$big > $small" | bc) -eq 1 ]; then
        echo "$big is bigger than $small"
fi

# deal with floating point numbers with 'awk' language
echo $(awk -v x=10 -v y=2.5 'BEGIN {printf "10/2.5=%.2f\n",x/y}')
v=$(echo $big $small | awk '{ printf "%0.8f\n" ,$1/$2}')
echo "$big / $small = $v"

echo $big $small | awk '{if($1>$2) {printf"%f > %f\n",$1,$2} else {printf"%f %f\n",$1,$2}}'

執行的結果如下:

復制代碼 代碼如下:

master@jay-linux:~/workspace/mygit/shell/sh2012$ ./floating-point.sh
c=a+b=3.33+3.3=6.63
d=a*b=3.33*3.3=10.98
e=a/b=3.33/3.3=1.00909
pi=3.1415926532
s=sin(pi/6)=.49999999994373819220
binary of (15+16) is 11111
100 is bigger than 99.9
10/2.5=4.00
100 / 99.9 = 1.00100100
100.000000 > 99.900000

另外,bc處理一個文件中的計算邏輯,演示如下:

復制代碼 代碼如下:

master@jay-linux:~/workspace/mygit/shell/sh2012$ cat temp.bc
3+8
3/8
scale=2; 3/8

master@jay-linux:~/workspace/mygit/shell/sh2012$ bc -q temp.bc
11
0
.37

bc是強大的工具,請“man bc”查看詳情;同樣,請“man awk”。

 

您可能感興趣的文章:
  • python讀取浮點數和讀取文本文件示例
  • js浮點數保留兩位小數點示例代碼(四舍五入)
  • 正負小數點后兩位浮點數實現原理及代碼
  • 基于C++浮點數(float、double)類型數據比較與轉換的詳解
  • PHP數據類型之整數類型、浮點數的介紹

標簽:淘寶邀評 婁底 許昌 邵陽 赤峰 金昌 巴彥淖爾 馬鞍山

巨人網絡通訊聲明:本文標題《Shell腳本處理浮點數的運算和比較實例》,本文關鍵詞  Shell,腳本,處理,浮,點數,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Shell腳本處理浮點數的運算和比較實例》相關的同類信息!
  • 本頁收集關于Shell腳本處理浮點數的運算和比較實例的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    欧美在线影院一区二区| 国产精品小仙女| 自拍偷拍亚洲激情| 国产欧美日韩三级| 久久女同精品一区二区| 2021中文字幕一区亚洲| 国产三级欧美三级日产三级99| 精品毛片乱码1区2区3区| 久久影院电视剧免费观看| 久久这里都是精品| 亚洲欧洲色图综合| 亚洲一区二区三区四区中文字幕| 亚洲精品乱码久久久久久日本蜜臀| 亚洲欧美日韩电影| 亚洲国产wwwccc36天堂| 久久成人免费网站| 国产成人亚洲综合a∨婷婷图片| 成人的网站免费观看| 北条麻妃国产九九精品视频| 91在线云播放| 欧美三级三级三级爽爽爽| 欧美一区二区精品| 国产精品区一区二区三| 亚洲图片欧美一区| 国产成人午夜99999| av成人动漫在线观看| 欧美亚洲自拍偷拍| 26uuu色噜噜精品一区二区| 中文字幕一区二区在线观看 | 国产成人欧美日韩在线电影| 成人福利在线看| 欧美精品色一区二区三区| 欧美videossexotv100| 久久久久久久一区| 亚洲国产中文字幕在线视频综合| 国产尤物一区二区| 欧美午夜宅男影院| 久久中文字幕电影| 亚洲成av人片在线观看| 国产不卡在线一区| 在线综合亚洲欧美在线视频| 国产精品美女视频| 欧美a级一区二区| 91啪在线观看| 国产午夜亚洲精品午夜鲁丝片| 亚洲一区视频在线| 国产激情一区二区三区| 欧美日韩色一区| 亚洲色图视频网| 国产精品一区一区| 日韩视频一区二区三区在线播放 | 久久久久九九视频| 亚欧色一区w666天堂| 9久草视频在线视频精品| 日韩精品一区二区三区在线观看| 一区二区三区四区视频精品免费 | 久久夜色精品一区| 视频一区在线视频| 色嗨嗨av一区二区三区| 国产精品大尺度| 国产精品亚洲一区二区三区在线| 精品国产乱码久久| 美女高潮久久久| 日韩一区二区三区在线观看| 亚洲在线视频免费观看| 91在线观看下载| 亚洲欧洲一区二区在线播放| 99在线精品视频| 26uuu另类欧美| 国产呦精品一区二区三区网站| 日韩亚洲欧美一区二区三区| 日韩成人免费看| 51精品久久久久久久蜜臀| 亚洲成人久久影院| 欧美三级韩国三级日本一级| 亚洲一区二区三区在线| 欧美久久久久久久久久| 免费美女久久99| 久久综合成人精品亚洲另类欧美| 国产激情一区二区三区| 中文字幕中文在线不卡住| av电影天堂一区二区在线观看| 亚洲精品网站在线观看| 欧美色爱综合网| 日产国产欧美视频一区精品| 日韩一区二区免费电影| 国内精品视频一区二区三区八戒| 国产丝袜欧美中文另类| 91免费版在线| 日本亚洲免费观看| 久久综合999| 色婷婷精品久久二区二区蜜臀av | 一区二区在线电影| 欧美亚洲高清一区二区三区不卡| 日韩专区一卡二卡| 欧美成人精品3d动漫h| 国产乱人伦精品一区二区在线观看 | 欧美激情一区二区三区四区| av在线一区二区| 亚洲制服丝袜av| 日韩你懂的在线观看| 成人午夜av影视| 亚洲高清不卡在线观看| 日韩一级免费观看| 成人性生交大片免费看在线播放| 亚洲日本一区二区| 日韩视频在线观看一区二区| 成人性生交大合| 三级在线观看一区二区| 欧美经典一区二区三区| 欧美综合色免费| 国产老肥熟一区二区三区| 一区二区在线观看不卡| 国产调教视频一区| 制服丝袜日韩国产| 91蜜桃免费观看视频| 经典一区二区三区| 午夜精品一区在线观看| 国产精品亲子乱子伦xxxx裸| 欧美一区二区视频观看视频| 色综合天天做天天爱| 国内成+人亚洲+欧美+综合在线| 亚洲一区二区三区爽爽爽爽爽| 久久精子c满五个校花| 欧美一区二区在线视频| 91福利国产成人精品照片| 国产成人av电影在线播放| 日韩va欧美va亚洲va久久| 18欧美乱大交hd1984| 久久久久久一级片| 欧美一二三区在线观看| 欧美主播一区二区三区| 91麻豆123| 93久久精品日日躁夜夜躁欧美| 国产成人高清在线| 国产福利一区二区三区视频| 美女在线观看视频一区二区| 亚洲一区二区三区四区的| 亚洲精品五月天| 亚洲精品一卡二卡| 亚洲激情网站免费观看| 亚洲日本韩国一区| 136国产福利精品导航| 国产精品天天看| 国产精品久久久久久福利一牛影视| 精品国产亚洲一区二区三区在线观看| 91精品国产综合久久福利软件| 欧美亚洲动漫制服丝袜| 欧美性色欧美a在线播放| 日本精品视频一区二区三区| 色哟哟一区二区| 欧美视频自拍偷拍| 欧美精品一卡两卡| 欧美电影免费观看高清完整版在线 | 强制捆绑调教一区二区| 免费人成在线不卡| 美女在线视频一区| 国产乱色国产精品免费视频| 波多野洁衣一区| 欧美亚男人的天堂| 欧美一级二级三级蜜桃| 久久久久亚洲综合| 中文一区二区在线观看| 亚洲毛片av在线| 亚洲成人精品影院| 激情图片小说一区| av午夜一区麻豆| 欧美精品777| 久久久国际精品| 一区二区高清视频在线观看| 日韩精品一级中文字幕精品视频免费观看| 日本不卡视频在线观看| 粉嫩一区二区三区性色av| 欧美综合久久久| 欧美精品一区二区久久婷婷| 国产精品久久久久久久久动漫| 午夜精品久久久久久不卡8050| 久久电影网电视剧免费观看| 91免费版pro下载短视频| 日韩欧美你懂的| 亚洲精品久久久久久国产精华液| 秋霞午夜鲁丝一区二区老狼| 国产iv一区二区三区| 欧美性感一类影片在线播放| 欧美大片顶级少妇| 日韩一区在线免费观看| 日韩中文字幕麻豆| 波多野结衣精品在线| 欧美mv和日韩mv的网站| 亚洲精品视频在线观看免费| 日本中文字幕一区二区视频| www..com久久爱| 欧美第一区第二区| 亚洲成av人片一区二区| 成人污污视频在线观看| 日韩一区二区三免费高清| 亚洲欧洲精品一区二区精品久久久| 午夜不卡在线视频| 色综合天天综合网国产成人综合天 | 久久综合色一综合色88|