Salir de un bucle en Bash
Trabajar con el bucle es una tarea común para cualquier lenguaje de programación o secuencias de comandos. Cuando trabajamos con el ciclo, a veces necesitamos detenerlo bajo una condición predefinida.
Al igual que otros lenguajes de programación y secuencias de comandos, Bash usa la palabra clave romper
para detener cualquier ciclo.
Este artículo mostrará cómo podemos detener la ejecución de un bucle. Además, discutiremos el tema con los ejemplos y explicaciones necesarios para que el tema sea más fácil de entender.
Detendremos los tres bucles más utilizados: while
, for
y until
. Comencemos uno por uno.
Salir del bucle while
en Bash
Puede utilizar la palabra clave break
con el bucle while
. De esta forma, puede detener la ejecución del bucle while
en una condición específica.
Echa un vistazo al siguiente ejemplo:
i=0
while [[ $i -lt 15 ]]
do
if [[ "$i" == '4' ]]
then
echo "Number $i! We are going to stop here."
break
fi
echo $i
((i++))
done
echo "We are stopped!!!"
En el ejemplo compartido anteriormente, detuvimos el ciclo while
cuando el valor de i
era igual a 4.
Después de ejecutar el script Bash anterior, obtendrá un resultado como el siguiente:
0
1
2
3
Number 4! We are going to stop here.
We are stopped!!!
Salir del bucle for
en Bash
La palabra clave break
también se puede utilizar para detener el bucle for
en una condición específica. Para hacer esto, vea el siguiente ejemplo:
for i in {1..15}
do
if [[ $i == '5' ]]
then
echo "Number $i! We are going to stop here."
break
fi
echo "$i"
done
echo "We are stopped!!!"
En el ejemplo compartido anteriormente, detuvimos el bucle for
cuando el valor de i
era igual a 5.
Después de ejecutar el script Bash anterior, obtendrá el siguiente resultado:
1
2
3
4
Number 5! We are going to stop here.
We are stopped!!!
Salir del bucle hasta
en Bash
Hay otro bucle popular en Bash llamado hasta
, que también se puede detener con la palabra clave romper
. Para dejar de hasta
, puede seguir los ejemplos compartidos a continuación:
i=0
until [[ $i -gt 15 ]]
do
if [[ $i -eq 5 ]]
then
echo "Number $i! We are going to stop here."
break
fi
echo $i
((i++))
done
echo "We are stopped!!!"
En el ejemplo compartido anteriormente, detendremos el bucle hasta
cuando el valor de i
sea igual a 5
.
Después de ejecutar el script Bash anterior, obtendrá un resultado como el siguiente:
0
1
2
3
4
Number 5! We are going to stop here.
We are stopped!!!
Puede elegir cualquiera de los métodos anteriores en función de su bucle.
Todos los códigos utilizados en este artículo están escritos en Bash. Solo funcionará en el entorno Linux Shell.
Aminul Is an Expert Technical Writer and Full-Stack Developer. He has hands-on working experience on numerous Developer Platforms and SAAS startups. He is highly skilled in numerous Programming languages and Frameworks. He can write professional technical articles like Reviews, Programming, Documentation, SOP, User manual, Whitepaper, etc.
LinkedIn