Bash 基本運(yùn)算符

2022-11-01 16:21 更新

您可能希望通過腳本運(yùn)算獲得的結(jié)果是您想要的,那么您需要應(yīng)用到算術(shù)運(yùn)算符參與算術(shù)運(yùn)算以獲得您所需的結(jié)果。

算術(shù)運(yùn)算符列表

在 Bash 中共支持11種算術(shù)運(yùn)算符。

運(yùn)算符 描述 運(yùn)算示例
+ 加法 $((5+3)) ,打印輸出 8
- 減法 $((5-3)) ,打印輸出 2
* 乘法 $((5*3)) ,打印輸出 15
/ 除法 $((15/3)) ,打印輸出 5
** 求冪 $((10**3)) ,打印輸出 1000
% $((10%3)) ,打印輸出 1
+= 常量遞增變量,結(jié)果存儲(chǔ)回變量 x=5;let"x += 3";echo $x ,打印輸出 8
-= 常量遞減變量,結(jié)果存儲(chǔ)回變量 x=5;let"x -= 3";echo $x ,打印輸出 2
*= 變量乘以常量,結(jié)果存儲(chǔ)回變量 x=5;let"x *= 3";echo $x ,打印輸出 15
/= 變量除以常量,結(jié)果存儲(chǔ)回變量 x=15;let"x /= 3";echo $x ,打印輸出 5
%= 變量除以常量的余數(shù),結(jié)果存儲(chǔ)回變量 x=10;let"x %= 3";echo $x ,打印輸出 1

關(guān)系運(yùn)算符列表

運(yùn)算符 描述 運(yùn)算示例
-eq 檢查兩個(gè)數(shù)字是否相等 1 -eq 1 ,返回 true
-ne 檢查兩個(gè)數(shù)字是否不相等 1 -ne 2 ,返回 true
-gt 檢查左邊數(shù)是否大于右邊數(shù) 2 -gt 1 ,返回 true
-lt 檢查左邊數(shù)是否小于右邊數(shù) 1 -gt 2 ,返回 true
-ge 檢查左邊數(shù)是否大于等于右邊數(shù) 2 -ge 1 ,返回 true
-le 檢查左邊數(shù)是否小于等于右邊數(shù) 1 -le 2 ,返回 true

邏輯運(yùn)算符列表

運(yùn)算符 描述
&& 邏輯為AND
|| 邏輯為OR

Bash 算術(shù)運(yùn)算

  • 雙括號(hào)的使用

基本語法:

    ((expression))
可采用四種大同小異的方法來實(shí)現(xiàn)所需的目標(biāo)運(yùn)算。
1. ```
Num=$((5+3))
echo "Num = $Num
```
2. ```
((Num=5+3))
echo "Num = $Num"
```
3. ```
Num1=5
Num2=3
((Num3=Num1+Num2))
echo "Num3 = $Num3"
```
4. ```
Num1=5
Num2=3
Num3=$((Num1+Num2))
echo "Num3 = $Num3"
```
以上四種方法結(jié)果均相同。
  • 反引號(hào)的使用

反引號(hào)要與expr(通用表達(dá)式求值器)執(zhí)行算術(shù)擴(kuò)展。


```expr` ``在算術(shù)運(yùn)算結(jié)束后不會(huì)將結(jié)果保存到變量中,而是直接將結(jié)果打印輸出,如下示例:
```
#!/bin/bash

echo "Num1=5, Num2=3" echo "Num3 is the value of addition Num3=Num1+Num2" Num1=5 Num2=3 echo "Num3= expr $Num1 + $Num2"

    執(zhí)行后得到以下結(jié)果:
Num1=5,Num2=3
Num3 is the value of addition Num3=Num1+Num2
Num3= 8
```
  • let 命令的構(gòu)建

let 是 Bash 的內(nèi)置命令,用于執(zhí)行算術(shù)運(yùn)算,算術(shù)運(yùn)算完成后會(huì)將結(jié)果存儲(chǔ)至變量中,語法為:

    let <arithmetic expression>
示例:
```
#!/bin/bash

Num1=10 Num2=6 Num3=0 echo "W3Cschool" let "Num3 = $(( Num1 + Num2 ))" echo "Num3= $Num3"

    執(zhí)行后得到一下結(jié)果:
W3Cschool
Num3= 16
```
以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)