如何在 Bash 中進行遞增/遞減操作
    
    Suraj Joshi
    2023年1月30日
    
    Linux
    Bash
    
遞增和遞減運算是每種程式語言中使用最廣泛的運算之一。它們主要用作迴圈中的計數器。為了在 Bash 中執行變數遞增和遞減,我們可以使用+ 和 - 運算子或+= 和 -= 運算子。我們還可以使用一元運算子 ++ 和 -- 在 Bash 中執行遞增和遞減操作。
使用+ 和 - 運算子進行增減操作
    
它是執行增量和減量操作的最簡單方法。我們通過在 ((..)) 或 $(((..))) 內封閉表示式或使用內建的 let 命令來進行操作。
x=3
y=3
z=3
x=$((x+1))
((y=y+1))
let "z=z+1"
echo x: $x
echo y: $y
echo z: $z
輸出:
x: 4
y: 4
z: 4
我們可以看到,我們可以使用 + 以三種不同的方式執行相同的增量操作。
我們也可以同樣地執行遞減操作。
x=3
y=3
z=3
x=$((x-1))
((y=y-1))
let "z=z-1"
echo x: $x
echo y: $y
echo z: $z
輸出:
x: 2
y: 2
z: 2
它使用 - 操作符以三種不同的方式執行遞減操作。
用 += 和 -= 操作符進行遞增和遞減操作
運算子 += 和 -= 用運算子右邊的值增加或減少運算子左邊的值。
x+=y 相當於 x=x+y,x-=y 相當於 x=x-y。
x=3
y=3
((x+=1))
let "y-=1"
echo x: $x
echo y: $y
輸出:
x: 4
y: 2
這裡,一開始,x 和 y 的值都是 3。在對 x 進行增量運算後,其值變成 4。同樣,在對 y 進行遞減操作後,y 的值變成 2。
我們也可以在一個迴圈中實現增量或減量。
x=1
while [ $x -le 5 ]
do
  echo x: $x
  let "x+=1" 
done
輸出:
x: 1
x: 2
x: 3
x: 4
x: 5
只要 x 的值小於或等於 5,它就會遞增 x 的值。
用 ++ 和 -- 運算子進行增減運算
運算子++ 和 -- 是一元運算子,將值運算元增加或減少 1。
x++ 相當於 x=x+1,x-- 相當於 x=x-1。
x=3
y=3
((x++))
let "y--"
echo x: $x
echo y: $y
輸出:
x: 4
y: 2
這裡,一開始,x 和 y 的值都是 3。在對 x 進行增量運算後,它的值變成 4。同理,對 y 進行遞減操作後,y 的值變成 2。
我們也可以在迴圈中實現++ 和 -- 運算子。
x=5
while [ $x -ge 1 ]
do
  echo x: $x
  let "x--" 
done
輸出:
x: 5
x: 4
x: 3
x: 2
x: 1
只要 x 的值大於或等於 1,它就會對 x 的值進行遞減。
        Enjoying our tutorials? Subscribe to DelftStack on YouTube to support us in creating more high-quality video guides. Subscribe
    
作者: Suraj Joshi
    Suraj Joshi is a backend software engineer at Matrice.ai.
LinkedIn