Ayúdanos a seguir proporcionándote tutoriales gratuitos y de calidad desactivando tu bloqueador de anuncios. suscriptores a nuestro sitio.

Cómo usar Break and Continue en Bash en Linux

1 mar 2021 2 min di lettura
Cómo usar Break and Continue en Bash en Linux
Tabla de contenidos

Introducción

Los bucles le permiten ejecutar uno o más comandos varias veces hasta que se cumpla una determinada condición. Sin embargo, a veces puede ser necesario cambiar el flujo del ciclo y terminar el ciclo o simplemente la iteración actual.

En Bash, las break y continue permiten controlar la ejecución del bucle. (lazo)

Declaración de Bash Break

La break finaliza el ciclo actual y pasa el control del programa al comando que sigue al ciclo terminado. Se utiliza para salir de la for, while, until, o bucle select. La sintaxis de la break tiene la siguiente forma:

break [n]

[n] es un argumento opcional y debe ser mayor o igual que 1. Cuando [n], se termina el n-ésimo ciclo de cierre. break 1 es equivalente a break.

Para comprender mejor cómo usar la break, veamos los siguientes ejemplos.

En la siguiente secuencia de comandos, el while de ejecución del bucle será abortado cuando el elemento iterado actual es igual a 2:

i=0

 while [[ $i -lt 5 ]]
 do
 echo "Number: $i"
 ((i++))
 if [[ $i -eq 2 ]]; then
 break
 fi
 done

 echo 'All Done!'
Number: 0
 Number: 1
 All Done!

A continuación, se muestra un ejemplo del uso de la instrucción break for

Cuando no se proporciona el argumento [n] break termina el ciclo de cierre más interno. Los bucles externos no se terminan:

for i in {1..3}; do
 for j in {1..3}; do
 if [[ $j -eq 2 ]]; then
 break
 fi
 echo "j: $j"
 done
 echo "i: $i"
 done

 echo 'All Done!'
j: 1
 i: 1
 j: 1
 i: 2
 j: 1
 i: 3
 All Done!

Si desea salir del circuito externo, use el break 2. El argumento 2 le dice a break que termine el segundo ciclo de cierre:

for i in {1..3}; do
 for j in {1..3}; do
 if [[ $j -eq 2 ]]; then
 break 2
 fi
 echo "j: $j"
 done
 echo "i: $i"
 done

 echo 'All Done!'
j: 1
 All Done!

Declaración de Bash continua

La continue omite los comandos restantes dentro del cuerpo del bucle que encierra la iteración actual y pasa el control del programa a la siguiente iteración del bucle.

La sintaxis de la continue es la siguiente:

continue [n]

El [n] es opcional y puede ser mayor o igual a 1. Cuando se da [n], se reanuda el n-ésimo ciclo circundante. continue 1 es equivalente a continue.

En el siguiente ejemplo, una vez que el artículo iterado actual es igual a 2, la continue hará que la ejecución regrese al comienzo del ciclo y continúe con la siguiente iteración.

i=0

 while [[ $i -lt 5 ]]; do
 ((i++))
 if [[ "$i" == '2' ]]; then
 continue
 fi
 echo "Number: $i"
 done

 echo 'All Done!'
Number: 1
 Number: 3
 Number: 4
 Number: 5
 All Done!

El siguiente script imprime números del 1 al 50 que son divisibles por 9.

Si un número no es divisible por 9, la continue omite el echo y pasa el control a la siguiente iteración del ciclo.

for i in {1..50}; do
 if [[ $(( $i % 9 )) -ne 0 ]]; then
 continue
 fi
 echo "Divisible by 9: $i"
 done
Divisible by 9: 9
 Divisible by 9: 18
 Divisible by 9: 27
 Divisible by 9: 36
 Divisible by 9: 45

Conclusión

Los bucles son uno de los conceptos fundamentales de los lenguajes de programación. En lenguajes de scripting como Bash, los bucles son útiles para automatizar tareas repetitivas.

La break se utiliza para salir del ciclo actual. La continue se usa para salir de la iteración actual de un bucle y comenzar la siguiente iteración.

Apóyenos si le gusta nuestro contenido. Gracias.

Buy me a coffeeBuy me a coffee

Únase a la conversación

Apóyenos con una donación.

Genial! A continuación, complete el pago para obtener acceso completo a Noviello.it.
Bienvenido de nuevo! Has iniciado sesión correctamente.
Te has suscrito correctamente a Noviello.it.
Éxito! Su cuenta está completamente activada, ahora tiene acceso a todo el contenido.
Éxito! Su información de facturación ha sido actualizada.
Su facturación no se actualizó.