日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
Shell數(shù)學(xué)計(jì)算(算術(shù)運(yùn)算,加減乘除運(yùn)算)
如果要執(zhí)行算術(shù)運(yùn)算(數(shù)學(xué)計(jì)算),就離不開各種運(yùn)算符號(hào),和其他編程語言類似,Shell 也有很多算術(shù)運(yùn)算符,下面就給大家介紹一下常見的 Shell 算術(shù)運(yùn)算符,如下表所示。

成都創(chuàng)新互聯(lián)專注于雙鴨山企業(yè)網(wǎng)站建設(shè),成都響應(yīng)式網(wǎng)站建設(shè)公司,商城建設(shè)。雙鴨山網(wǎng)站建設(shè)公司,為雙鴨山等地區(qū)提供建站服務(wù)。全流程按需策劃,專業(yè)設(shè)計(jì),全程項(xiàng)目跟蹤,成都創(chuàng)新互聯(lián)專業(yè)和態(tài)度為您提供的服務(wù)

Shell 算術(shù)運(yùn)算符一覽表
算術(shù)運(yùn)算符 說明/含義
+、- 加法(或正號(hào))、減法(或負(fù)號(hào))
*、/、% 乘法、除法、取余(取模)
** 冪運(yùn)算
++、-- 自增和自減,可以放在變量的前面也可以放在變量的后面
!、&&、|| 邏輯非(取反)、邏輯與(and)、邏輯或(or)
<、<=、>、>= 比較符號(hào)(小于、小于等于、大于、大于等于)
==、!=、= 比較符號(hào)(相等、不相等;對(duì)于字符串,= 也可以表示相當(dāng)于)
<<、>> 向左移位、向右移位
~、|、 &、^ 按位取反、按位或、按位與、按位異或
=、+=、-=、*=、/=、%= 賦值運(yùn)算符,例如 a+=1 相當(dāng)于 a=a+1,a-=1 相當(dāng)于 a=a-1

但是,Shell 和其它編程語言不同,Shell 不能直接進(jìn)行算數(shù)運(yùn)算,必須使用數(shù)學(xué)計(jì)算命令,這讓初學(xué)者感覺很困惑,也讓有經(jīng)驗(yàn)的程序員感覺很奇葩。

下面我們先來看一個(gè)反面的例子:

[c.biancheng.net]$ echo 2+8
2+8
[c.biancheng.net]$ a=23
[c.biancheng.net]$ b=$a+55
[c.biancheng.net]$ echo $b
23+55
[c.biancheng.net]$ b=90
[c.biancheng.net]$ c=$a+$b
[c.biancheng.net]$ echo $c
23+90

從上面的運(yùn)算結(jié)果可以看出,默認(rèn)情況下,Shell 不會(huì)直接進(jìn)行算術(shù)運(yùn)算,而是把
+兩邊的數(shù)據(jù)(數(shù)值或者變量)當(dāng)做字符串,把
+當(dāng)做字符串連接符,最終的結(jié)果是把兩個(gè)字符串拼接在一起形成一個(gè)新的字符串。

這是因?yàn)?,?nbsp;Bash Shell 中,如果不特別指明,每一個(gè)變量的值都是字符串,無論你給變量賦值時(shí)有沒有使用引號(hào),值都會(huì)以字符串的形式存儲(chǔ)。

換句話說,Bash shell 在默認(rèn)情況下不會(huì)區(qū)分變量類型,即使你將整數(shù)和小數(shù)賦值給變量,它們也會(huì)被視為字符串,這一點(diǎn)和大部分的編程語言不同。

這一點(diǎn)我們已在《Shell變量》中提到,讀者可以猛擊鏈接回憶。

數(shù)學(xué)計(jì)算命令

要想讓數(shù)學(xué)計(jì)算發(fā)揮作用,必須使用數(shù)學(xué)計(jì)算命令,Shell 中常用的數(shù)學(xué)計(jì)算命令如下表所示。

Shell 中常用的六種數(shù)學(xué)計(jì)算方式
運(yùn)算操作符/運(yùn)算命令 說明
(( )) 用于整數(shù)運(yùn)算,效率很高,推薦使用。
let 用于整數(shù)運(yùn)算,和 (()) 類似。
$[] 用于整數(shù)運(yùn)算,不如 (()) 靈活。
expr 可用于整數(shù)運(yùn)算,也可以處理字符串。比較麻煩,需要注意各種細(xì)節(jié),不推薦使用。
bc Linux下的一個(gè)計(jì)算器程序,可以處理整數(shù)和小數(shù)。Shell 本身只支持整數(shù)運(yùn)算,想計(jì)算小數(shù)就得使用 bc 這個(gè)外部的計(jì)算器。
declare -i 將變量定義為整數(shù),然后再進(jìn)行數(shù)學(xué)運(yùn)算時(shí)就不會(huì)被當(dāng)做字符串了。功能有限,僅支持最基本的數(shù)學(xué)運(yùn)算(加減乘除和取余),不支持邏輯運(yùn)算、自增自減等,所以在實(shí)際開發(fā)中很少使用。

在接下來的章節(jié)中,我們將逐一為大家講解 Shell 中的各種運(yùn)算符號(hào)及運(yùn)算命令。


網(wǎng)頁標(biāo)題:Shell數(shù)學(xué)計(jì)算(算術(shù)運(yùn)算,加減乘除運(yùn)算)
文章鏈接:http://www.5511xx.com/article/coseooh.html