educación, informática y demás

Bucles for

El comando for nos permite recorrer una lista de elementos uno por uno. En cada vuelta del bucle, se asigna a la variable del bucle un valor de la lista en orden, pasando desde el primero hasta el último.

De esta forma, utilizaremos este tipo de bucles para realizar recorridos por una lista de elementos o de información.

Algunos ejemplos de su uso pueden ser:

  1. Recorrer el contenido de una lista de valores
    • Secuencias de números o letras
    • Valores discretos, como nombres de usuarios, directorios, ficheros, etc.
  2. Recorrer el listado de ficheros de un directorio
    • Ficheros que cumplen un patrón
    • Ficheros dentro de un directorio
  3. Recorrer el contenido de un fichero

A continuación se muestran algunos ejemplos de uso simple en scripts con bucles for.

Ejemplo 01 – Bucle For

Vamos a crear un script que muestre los números del 1 al 10.

Para ello utilizaremos un bucle for y en la lista de elementos tendremos que proporcionar una lista de números del 1 al 10.

Fichero: for01.sh

Ejemplo 02 – Bucle for

Ahora vamos a recorrer los números del 10 al 1, es decir el recorrido se realizará a la inversa.

Fichero: for02.sh

Ejemplo 03 – Bucles for

Vamos a crear un script que muestre los ficheros del directorio personal del usuario actual, pero lo haremos mostrando en orden los ficheros que comiencen por cada una de las letras del abecedario, de la a a la z.

Por tanto, recorreremos una lista de letras de la a a la z y buscaremos los ficheros del directorio personal del usuario actual que comiencen con la letra que toque en cada vuelta del bucle, mostrándolos por pantalla.

Si para una letra no existe ningún fichero que comience con esa letra, deberíamos mostrar un mensaje de advertencia apropiado.

Fichero: for03.sh

Ejemplo 04 – Bucles for

Necesitamos un script que recorra los ficheros del directorio personal del usuario actual mostrando para cada fichero su nombre, el tipo de fichero que es e información de permisos, propietario, grupo y tamaño del fichero.

Para cada fichero mostraremos el nombre del fichero, el tipo de fichero que es:

  1. Directorio
  2. Fichero estándar
  3. Fichero especial de bloques
  4. Fichero especial de caracteres
  5. Enlace simbólico
  6. Otro tipo de fichero

Una vez mostrado el tipo de fichero, nos gustaría mostrar, en una lista con un campo en cada línea la siguiente información:

  1. Los permisos del fichero en formato caracteres (rwx).
  2. El nombre del usuario propietario.
  3. El nombre del grupo del fichero.
  4. El tamaño del fichero.

Por tanto, vamos a recorrer los ficheros que hay en el directorio personal (lista de elementos) y para cada fichero (variable del for) obtendremos y mostraremos la información solicitada.

Fichero: for04.sh