Androide

Cómo incrementar y disminuir la variable en bash (contador)

C++: Contadores y Acumuladores [ Programación C++ ][15]

C++: Contadores y Acumuladores [ Programación C++ ][15]

Tabla de contenido:

Anonim

Una de las operaciones aritméticas más comunes al escribir scripts de Bash es aumentar y disminuir las variables. Esto se usa con mayor frecuencia en bucles como contador, pero también puede ocurrir en otras partes del script.

Incrementar y Disminuir significa sumar o restar un valor (generalmente 1 ), respectivamente, del valor de una variable numérica. La expansión aritmética se puede realizar utilizando los paréntesis dobles ((…)) y $((…)) o con el comando let builtin.

En Bash, hay múltiples formas de aumentar / disminuir una variable. Este artículo explica algunos de ellos.

Uso de operadores + y -

La forma más simple de aumentar / disminuir una variable es utilizando los operadores + y - .

i=$((i+1)) ((i=i+1)) let "i=i+1"

i=$((i-1)) ((i=i-1)) let "i=i-1"

Este método le permite aumentar / disminuir la variable en cualquier valor que desee.

Aquí hay un ejemplo de incremento de una variable dentro de un bucle until :

i=0 until do echo i: $i ((i=i+1)) done

i: 0 i: 1 i: 2 i: 3

Los operadores += y -=

Además de los operadores básicos explicados anteriormente, bash también proporciona los operadores de asignación += y -= . Estos operadores se utilizan para aumentar / disminuir el valor del operando izquierdo con el valor especificado después del operador.

((i+=1)) let "i+=1"

((i-=1)) let "i-=1"

En el siguiente ciclo while estamos decrementando el valor de la variable i en 5 .

i=20 while do echo Number: $i let "i-=5" done

Number: 20 Number: 15 Number: 10 Number: 5

Uso de los operadores ++ y --

Los operadores ++ y -- incrementan y disminuyen, respectivamente, su operando en 1 y devuelven el valor.

((i++)) ((++i)) let "i++" let "++i"

((i--)) ((--i)) let "i--" let "--i"

Los operadores se pueden usar antes o después del operando. También son conocidos como:

  • incremento del prefijo: ++i decremento del prefijo: --i incremento del postfix: i++ decremento del postfix: i--

Los operadores de prefijo primero aumentan / disminuyen los operadores en 1 y luego devuelven el nuevo valor de los operadores. Por otro lado, los operadores de postfix devuelven el valor de los operadores antes de que se haya incrementado / disminuido.

Los siguientes ejemplos demuestran cómo funciona el operador ++ cuando se usa antes y después de su operante:

x=5 y=$((x++)) echo x: $x echo y: $y

x: 6 y: 5

x=5 y=$((++x)) echo x: $x echo y: $y

x: 6 y: 6

A continuación, se muestra un ejemplo de cómo usar el incrementador de postfix en un script bash:

#!/bin/bash i=0 while true; do if]; then exit 1 fi echo i: $i ((i++)) done

La desventaja de usar estos operadores es que la variable solo puede incrementarse o disminuirse en 1 .

Conclusión

Las variables de incremento y decremento en Bash se pueden realizar de muchas maneras diferentes. Cualquiera sea el método que utilice, el resultado es el mismo.

Si tiene alguna pregunta o comentario, no dude en dejar un comentario.

terminal de bucle bash