Un bucle se usa para repetir un conjunto de declaraciones repetidamente. El bucle Bash FOR es el tipo de bucle más básico, que se utiliza para la iteración. Aparte de esto, hay dos tipos más de bucles:el bucle while y el bucle do-while. Imagine que desea ejecutar una sola declaración varias veces en su código. ¿Qué vas a hacer? ¿Lo reescribirás una y otra vez en el código para ejecutarlo? Por supuesto que no, usará bucles en su lugar.
¿Qué es Bash?
Bash es un lenguaje de línea de comandos que fue escrito por Brian Fox. Se usa en muchas distribuciones de Linux, incluidas algunas de las distribuciones de Linux más populares, como Ubuntu, Fedora, Kali Linux, etc., y se usa como shell de inicio de sesión predeterminado para Linux.
Bash proporciona una interfaz de línea de comandos (CLI) donde un usuario puede escribir diferentes conjuntos de instrucciones para ejecutar y realizar una tarea. También hay otra forma de ejecutar comandos desde un archivo llamado script de shell que se discutirá más adelante.
¿Qué es Bash FOR Loop?
El bucle FOR se puede usar en la línea de comando para repetir el conjunto de declaraciones varias veces. Provocará la iteración de algunas declaraciones especificadas por el programador. Este ciclo puede ser útil para muchos programadores de muchas maneras. Pueden ayudar a automatizar diferentes tareas y pueden ir más allá con problemas complejos. Una persona con un conocimiento profundo de los bucles puede hacer maravillas con su ayuda.
Sintaxis de bucle FOR de Bash
El bucle FOR es uno de los bucles más sencillos que provocan la iteración de un conjunto de variables, la sintaxis general del bucle for se proporciona a continuación;
for VARIABLE in 1 2 3 4 5 .. N Run the below command: command1 command2 commandN done
En bash, la sintaxis anterior se dará como;
#!/bin/bash for i in 1 2 3 4 5 do echo "Hy $i" done
Una vez que ejecute el conjunto de instrucciones anterior, los resultados que obtendrá serán algo como:
Hy 1 Hy 2 Hy 3 Hy 4 Hy 5
#!/bin/bash - Verifica que el siguiente código sea parte de la codificación Bash. Ahora dividamos cada elemento que usamos en el código bash anterior. La breve introducción de cada elemento se da a continuación:
- yo - i es algo que ocupa el lugar de una variable. También puede escribir cualquier otro nombre como m/$m.
- En - El "in" separa ambas variables y los elementos de entrada dados.
1 2 3 4 5 - Estos son los números de entrada que estamos asignando para operar sobre él.- Hacer - El propósito de “do” es iniciar la ejecución del bucle. En el ejemplo anterior, "N" se usa para representar el número de ejecuciones repetidas para el ciclo. En el caso anterior, el número se asigna a 5.
- Echo "Hy $i" - Ahora bien, este es el código real o la instrucción que queremos ejecutar repetidamente. Una vez que complete 5 bucles, la ejecución se detendrá automáticamente.
- Terminado - Esto se refiere a detener el bucle después de la ejecución.
El código se puede escribir en un formato diferente según la versión de bash que esté ejecutando. Si la versión que está usando es v3.0+, entonces puede acortar fácilmente el rango usando “..”
Echa un vistazo a los siguientes códigos ahora:
#!/bin/bash for i in {1. .5} do echo "Easy $i" done
Otra cosa que las versiones posteriores (v4.0+) te permiten hacer es el incremento. Puede especificar fácilmente el elemento inicial, el elemento final o cualquier número y luego el aumento que desea. Su sintaxis se da como:
Echemos un vistazo al código de ejemplo:
#!/bin/bash for i in {0..8..2} do echo "Easy $i" done
En el ejemplo de código anterior, estamos tomando 0 como número inicial, y el número final dado como entrada es 8, seguido por el incremento de 2. Los resultados después de la ejecución serán algo como:
Easy 0 Easy 2 Easy 4 Easy 6 Easy 8
Ejemplos relacionados con bash for loop
Puede realizar muchas operaciones con la ayuda de un bucle FOR de bash. Una cosa que debe tener en cuenta es que para el archivo bash, la extensión del archivo debe ser “.sh”. Si no tiene un archivo bash presente en su escritorio, puede crear fácilmente uno nuevo ejecutando el comando:
Nombre de archivo Vim.sh
El comando anterior creará un nuevo archivo y se abrirá en el editor vim, donde podrá escribir su código.
Crear un bucle FOR de Bash infinito
En un ciclo infinito, el ciclo seguirá ejecutándose hasta que usted mismo lo detenga presionando Control + C.
#!/bin/bash for (( ; ; )) do echo "Hello There!" done
En el ejemplo anterior, la cadena dada se ejecutará una y otra vez hasta que detengas el ciclo tú mismo.
Bucle de tres expresiones
El bucle de tres expresiones consta de tres expresiones que incluyen una expresión de inicialización denominada EXP1 , una condición (EXP2 ) y una expresión de conteo (EXP3 ). Este bucle también se conoce como bucle de tipo C debido a la similitud en la estructura del código. Echa un vistazo a la sintaxis:
for (( EXP1; EXP2; EXP3 )) do command1 command2 command3 done
Ejemplo de bucle de tres expresiones en bash for loop:
#!/bin/bash for (( c=1; c<=5; c++ )) do echo "Hy $c" done
De acuerdo con el código anterior, dice que el valor inicial es 1. El ciclo seguirá ejecutándose hasta que la condición (EXP2) sea verdadera, y el signo ++ en el código anterior muestra el incremento en 1. El ciclo se repetirá nuevamente. comenzando desde el primer valor.
Los resultados serán algo así después de la ejecución del código.
Hy 1 Hy 2 Hy 3 Hy 4 Hy 5
Crear bucle FOR de bash Saltar y Continuar
El ciclo saltar y continuar se usa cuando desea omitir el ciclo para el valor específico y luego continuar el ciclo desde otro valor. La sintaxis se da como:
for I in 1 2 3 4 5 do if [condition] then continue #Go to next iteration of I in the loop and skip statements3 fi statement done
Podemos crear fácilmente un bucle para saltar y continuar como el siguiente:
for i in {1..5} do if [[ "$i" == '4' ]] then continue fi echo "Hy $i4" done
Los resultados que obtendrá después de la ejecución serán algo como:
Hy 1 Hy 2 Hy 3 Hy 5
Como podemos ver en el código, el valor 4 se correspondía con la declaración de continuación, por eso el ciclo se movió al valor 5.
Crear una salida condicional con el bucle de interrupción
La salida condicional con bucles de ruptura permite interrumpir la operación una vez que se cumple con la condición establecida. Echa un vistazo a la sintaxis:
for I in 1 2 3 4 5 do if [condition] then break fi statement done
Echemos un vistazo a un código de ejemplo que condiciona la salida y luego rompe el bucle:
for city in Karachi Munich NewYork Paris do if [[ "$city" == 'NewYork' ]]; then break fi echo "city: $city" done
Obtendrá el siguiente resultado una vez que haya ejecutado el código con cuidado.
city: Karachi city: Munich
La declaración en el código anterior muestra la ruptura del ciclo una vez que la condición se vuelve verdadera. Después de ejecutar la primera declaración, imprimirá la cadena que dice "¡Muy fácil!".
Conclusión
Los bucles FOR de Bash que se muestran en el artículo son muy beneficiosos para automatizar sus tareas diarias, ya sea que esté en TI o no, estos son algunos ejemplos simples, pero hay mucho más de lo que puede hacer con la ayuda de estos bucles. Has aprendido los conceptos básicos, ahora puedes pasar a un nivel más avanzado donde puedes aprender a usar bucles más grandes para tareas más complejas.
Lo único que necesita es escribir la sintaxis. La introducción a los conceptos básicos te ayudará mucho. En este artículo, hemos hablado principalmente sobre Bash For Loop, pero también hay otros bucles que debe aprender y que se demostrarán en el próximo artículo.