主頁(yè) > 知識(shí)庫(kù) > shell實(shí)現(xiàn)四則運(yùn)算簡(jiǎn)單方法

shell實(shí)現(xiàn)四則運(yùn)算簡(jiǎn)單方法

熱門(mén)標(biāo)簽:河南信譽(yù)好的不封卡電話外呼系統(tǒng) 打電話機(jī)器人接我是他的秘書(shū) 揭陽(yáng)智能電話機(jī)器人推薦 江蘇云電銷(xiāo)機(jī)器人公司 如果做線上地圖標(biāo)注 客服外呼系統(tǒng)怎么樣 地圖標(biāo)注員都是年輕人 百度地圖標(biāo)注錯(cuò)了有責(zé)任嗎 華鋒e路航港口地圖標(biāo)注

1.簡(jiǎn)單方法

復(fù)制代碼 代碼如下:

$ b=$((5*5+5-3/2))
$ echo $b
29

在linux shell中,我們可以使用 $(()) 將表達(dá)式放在括號(hào)中,即可達(dá)到運(yùn)算的功能。

2.其它方法:

用:expr 實(shí)現(xiàn)運(yùn)算

復(fù)制代碼 代碼如下:

$ expr 5 - 4
1

注意:將需要運(yùn)算的表達(dá)式寫(xiě)入在expr 后面即可,保證 參數(shù)與運(yùn)算符號(hào)中間有空格隔開(kāi)。

類(lèi)別 語(yǔ)法 說(shuō)明
條件判斷 expr1 \| expr2 如果 expr1 不是零或 null 則傳回 expr1,否則傳回 expr2。
expr1 \ expr2 如果 expr1 及 expr2 都不為零或 null,則傳回 expr1,否則傳回 0。
四則運(yùn)算 expr1 + expr2 傳回 expr1 加 expr2 后的值。
expr1 - expr2 傳回 expr1 減 expr2 后的值。
expr1\* expr2 傳回 expr1 乘 expr2 后的值。
expr1 / expr2 傳回 expr1 除 expr2 后的值。
expr1 % expr2 傳回 expr1 除 expr2 的余數(shù)。
大小判斷 expr1 \&; expr2 如果 expr1 大于 expr2 則傳回 1,否則傳回 0。如果 expr1 及 expr2 都是數(shù)字,則是以數(shù)字大小判斷,否則是以文字判斷。以下皆同。
expr1 \ expr2 如果 expr1 小于 expr2 則傳回 1,否則傳回 0。
expr1 = expr2 如果 expr1 等于 expr2 則傳回 1,否則傳回 0。
expr1 != expr2 如果 expr1 不等于 expr2 則傳回 1,否則傳回 0。
expr1 \&;= expr2 如果 expr1 大于或等于 expr2 則傳回 1,否則傳回 0。
expr1 \= expr2 如果 expr1 小于或等于 expr2 則傳回 1,否則傳回 0。
文字處理 expr1 : expr2 比較一固定字符串,即 regular expression??梢允褂孟铝凶址麃?lái)輔助:

. 匹配一個(gè)字符。

$ 找字符串的結(jié)尾。

[list] 找符合 list 中的任何字符串。

* 找尋 0 個(gè)或一個(gè)以上在 * 之前的字。

\( \) 傳回括號(hào)中所匹配的字符串。


3.浮點(diǎn)運(yùn)算

復(fù)制代碼 代碼如下:

$ expr 5.0 - 4
expr: non-integer argument
$ echo $((5.0-4))
-bash: 5.0-4: syntax error in expression (error token is ".0-4")

從上面運(yùn)算結(jié)果,看來(lái)上面表達(dá)式,不足以支持浮點(diǎn)運(yùn)算了 。 查閱資料才發(fā)現(xiàn):bash 不支持浮點(diǎn)運(yùn)算,如果需要進(jìn)行浮點(diǎn)運(yùn)算,需要借助bc,awk 處理。

方法一:

復(fù)制代碼 代碼如下:

[chengmo@centos5 ~]$ c=$(echo "5.01-4*2.0"|bc)
[chengmo@centos5 ~]$ echo $c
-2.99

方法二:

復(fù)制代碼 代碼如下:

[chengmo@centos5 ~]$ c=$(awk 'BEGIN{print 7.01*5-4.01 }')
[chengmo@centos5 ~]$ echo $c
31.04

注:在shell 中$() 與 ``等效。 中間包含命令語(yǔ)句執(zhí)行,返回執(zhí)行結(jié)果。

您可能感興趣的文章:
  • SHELL四則運(yùn)算和比較

標(biāo)簽:淘寶邀評(píng) 許昌 赤峰 金昌 邵陽(yáng) 婁底 馬鞍山 巴彥淖爾

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《shell實(shí)現(xiàn)四則運(yùn)算簡(jiǎn)單方法》,本文關(guān)鍵詞  shell,實(shí)現(xiàn),四則運(yùn)算,簡(jiǎn)單,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《shell實(shí)現(xiàn)四則運(yùn)算簡(jiǎn)單方法》相關(guān)的同類(lèi)信息!
  • 本頁(yè)收集關(guān)于shell實(shí)現(xiàn)四則運(yùn)算簡(jiǎn)單方法的相關(guān)信息資訊供網(wǎng)民參考!
  • 企业400电话

    智能AI客服机器人
    15000

    在线订购

    合计11份范本:公司章程+合伙协议+出资协议+合作协议+股权转让协议+增资扩股协议+股权激励+股东会决议+董事会决议

    推薦文章