Como realizar operações de incremento e decrescimento em Bash

Suraj Joshi 30 janeiro 2023
  1. Incremento e decremento com operadores + e - Operadores
  2. Incremento e decremento com os operadores += e -= Operadores
  3. Incremento e decremento com ++ e -- Operadores
Como realizar operações de incremento e decrescimento em Bash

As operações de incremento e decremento são uma das operações mais utilizadas em todas as linguagens de programação. Eles são usados principalmente como contadores em loops. Para realizar operações de incremento e decremento variável em Bash, podemos utilizar operadores + e - ou operadores += e -=. Também podemos executar incremento e decremento em Bash utilizando operadores unários: ++ e --.

Incremento e decremento com operadores + e - Operadores

É a maneira mais simples de realizar operações de incremento e decrescimento. Realizamos a operação encerrando as expressões dentro de ((...)) ou $((...)) ou utilizando o comando embutido 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

Resultado:

x: 4
y: 4
z: 4

Podemos ver que podemos realizar a mesma operação de incremento utilizando + de três maneiras diferentes.

Também podemos realizar a operação de decremento de forma semelhante.

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

Resultado:

x: 2
y: 2
z: 2

Realiza a operação de decremento utilizando o operador - de 3 maneiras diferentes.

Incremento e decremento com os operadores += e -= Operadores

Os operadores += e -= aumentam ou diminuem o valor do lado esquerdo do operador pelo valor do lado direito do operador.

x+=y é equivalente a x=x+y e x-=y é equivalente a x=x-y.

x=3
y=3
((x+=1))
let "y-=1"
echo x: $x
echo y: $y

Resultado:

x: 4
y: 2

Aqui, no início, os valores de x e y são 3. Após a operação de incremento em x, seu valor passa a ser 4. Da mesma forma, após a operação de incremento em y, o valor de y passa a ser 2.

Também podemos implementar incremento ou decremento em um loop.

x=1

while [ $x -le 5 ]
do
  echo x: $x
  let "x+=1" 
done

Resultado:

x: 1
x: 2
x: 3
x: 4
x: 5

Ele incrementa o valor de x desde que o valor de x seja menor ou igual a 5.

Incremento e decremento com ++ e -- Operadores

Os operadores ++ e -- são unários, aumentando ou diminuindo o valor operando em 1.

O x++ é equivalente a x=x+1 e x-- é equivalente a x=x-1.

x=3
y=3
((x++))
let "y--"
echo x: $x
echo y: $y

Resultado:

x: 4
y: 2

Aqui, no início, os valores de x e y são 3. Após a operação de incremento em x, o seu valor passa a ser 4. Da mesma forma, após a operação de incremento em y, o valor de y passa a ser 2.

Também podemos implementar ++ e -- operadores dentro de um loop.

x=5

while [ $x -ge 1 ]
do
  echo x: $x
  let "x--" 
done

Resultado:

x: 5
x: 4
x: 3
x: 2
x: 1

Decreta o valor de x desde que o valor de x seja maior ou igual a 1.

Suraj Joshi avatar Suraj Joshi avatar

Suraj Joshi is a backend software engineer at Matrice.ai.

LinkedIn