GNU/Linux >> Tutoriales Linux >  >> Linux

Comprender el bucle for en los scripts de Shell

Continuando con nuestros tutoriales anteriores, comprendamos el bucle for en los scripts de shell hoy. Ya hemos cubierto el ciclo while anteriormente y el ciclo for tiene un uso similar con un formato diferente.

Cómo empezar

Los bucles son ampliamente utilizados por programadores de todo el mundo. Agregar bucles a su script de shell lo ayuda a hacer que su código sea eficiente al reducir la cantidad de código que necesita escribir.

Esto se logra automatizando la ejecución de un conjunto de declaraciones en su script de shell en lugar de escribirlas repetidamente.

Usamos el ciclo for en los scripts de shell para casos en los que sabemos la cantidad de veces que deseamos que se ejecute nuestro ciclo. Este número de iteraciones se puede especificar mediante una lista de elementos. Entendamos el funcionamiento del bucle for en los scripts de shell.

¿Cómo crear un bucle for en scripts de Shell?

Hay dos formas de ejecutar un bucle for en scripts de shell.

1. Uso de la palabra clave "en"

for var in val_1 val_2 val_3 ... val_n
do
    statement 1
    statement 2
    statement 3
done

Aquí tenemos cuatro palabras clave, a saber, for, in, do y hecho .

  1. La primera palabra clave 'for' especifica el comienzo del bucle cuando ejecutamos nuestro script de shell.
  2. Le sigue una variable que puede tomar valores especificados por val_1, val_2 y así sucesivamente.
  3. La palabra clave en especifica el comienzo de esta lista de valores. Estos valores deben estar separados por "espacios", ya que cualquier otro carácter, como una coma, se tratará como parte del "valor".
  4. La palabra clave hacer se usa antes de las sentencias que deseamos ejecutar
  5. hecho significa el final de nuestro bucle.

2. Usando la inicialización de estilo C

La otra forma de usar el bucle for en scripts de shell es incorporar un enfoque de programación en C. Así es como se vería la sintaxis.

for (( initialization parameter; condition; updation))
do
    statement 1
    statement 2
    statement 3
done

Aquí, reemplazamos el "in" palabra clave para un enfoque más similar a C.

  1. Antes de que el ciclo comience la primera iteración, el parámetro de inicialización se usa para inicializar una variable que actuará como un contador para la cantidad de ciclos que se ejecuta nuestro ciclo
  2. Siempre que la condición se evalúa como VERDADERO, el ciclo ejecutará todas las declaraciones escritas entre “do ” y “hecho “.
  3. Finalmente, el último parámetro “actualización ” se utiliza para actualizar la variable que actúa como contador.

Ejemplos de bucle for en scripts de shell

Ahora estamos familiarizados con el concepto y el funcionamiento del bucle for en los scripts de shell. Pero para comprender correctamente un comando, debe poder usarlo en su código.

Veamos algunos ejemplos de uso práctico de bucles for

1. Creando un bucle for básico

Empezamos con algo simple y básico. Aquí, usamos el primer método para usar el ciclo for.

Usamos la palabra clave en para ejecutar un bucle durante 5 iteraciones mientras le dice al usuario la cantidad de veces que se ha ejecutado el bucle. Así es como debería verse el bucle en su código.

#!/bin/sh
for i in 1 2 3 4 5
do
  echo "Executing loop $i time(s)"
done

2. Generar una lista aleatoria de números usando for Loop en Shell Scripts

Ahora nos movemos hacia un ejemplo para usar la variante tipo C del bucle For. Todos sabemos cómo podemos usar comandos integrados para generar números pseudoaleatorios con un script de shell.

Aquí, usaremos este conocimiento para generar una lista de 5 números pseudoaleatorios.

#!/bin/sh
for (( i=1; i <= 5; i++ ))
do
 echo "Randomiser iteration $i: $RANDOM"
done

3. Imprimiendo los nombres de Archivos y Directorios usando for Loop

Tratar con una gran cantidad de archivos y directorios uno por uno lleva mucho tiempo. Escribir el mismo comando una y otra vez es una pérdida de tiempo.

Entonces deberíamos aprovechar el bucle for para automatizar la ejecución de un comando. Echemos un vistazo al script de shell de muestra a continuación para imprimir el nombre de todos los archivos y directorios presentes en su directorio de inicio.

#!/bin/sh
i=1
cd ~
for item in *
do
    echo "File number $((i++)) : $item"
done

Conclusión

Los bucles for son una herramienta poderosa para los programadores de shell. Es la mejor herramienta para usar cuando necesita ejecutar un conjunto de declaraciones un número fijo de veces.

Al automatizar la ejecución de declaraciones específicas, no solo necesita escribir menos código, sino que también libera tiempo que puede usarse en tareas más importantes, como la depuración.

Esperamos que este tutorial haya podido ayudarlo a comprender cómo usar la función For loop. Si tiene alguna consulta, comentario o sugerencia, no dude en comunicarse con nosotros en los comentarios a continuación.


Linux
  1. Personalización del shell Bash

  2. Comprender YAML para Ansible

  3. ¿Existen convenciones de nomenclatura para las variables en los scripts de Shell?

  4. ¿Matrices asociativas en scripts de Shell?

  5. Manteniéndote al tanto – Bash For, While, Until Ejemplos de bucles

¿Qué es el Shell en Linux?

Shell Scripting para principiantes:cómo escribir Bash Scripts en Linux

Bash For Loop:la guía más práctica

Matrices en scripts de Shell

El bucle while en los scripts de Shell

El Bash FOR Loop explicado y simplificado