Menu
Coddy logo textTech

Bucle For

Parte de la sección Fundamentos del Journey de Terminal de Coddy — lección 71 de 82.

A veces necesitas repetir una acción varias veces. En lugar de escribir el mismo comando una y otra vez, puedes usar un bucle for para iterar a través de una lista de elementos y realizar una acción en cada uno de ellos.

Aquí está la estructura básica de un bucle for en Bash:

#!/bin/bash
for name in Alice Bob Charlie; do
    echo "Hello, $name!"
done

Este script muestra un saludo para cada nombre de la lista. La variable name toma cada valor por turno: primero "Alice", después "Bob", después "Charlie". La palabra clave do marca el inicio del cuerpo del bucle, y done lo finaliza.

Los bucles for son especialmente potentes cuando se combinan con comodines. Puedes iterar a través de todos los archivos de un directorio:

#!/bin/bash
for file in *.txt; do
    echo "Processing $file"
done

Esto itera a través de cada archivo .txt en el directorio actual. En cada iteración, la variable file contiene el nombre del archivo actual, lo que le permite realizar operaciones en cada archivo automáticamente.

También puedes iterar a través de un rango de números usando la expansión de llaves:

#!/bin/bash
for i in {1..5}; do
    echo "Number: $i"
done

Esto imprime los números del 1 al 5. Los bucles for convierten las tareas repetitivas en solo unas pocas líneas de código, haciendo que tus scripts sean más eficientes y fáciles de mantener.

challenge icon

Desafío

Fácil

Crea un script de shell llamado countdown.sh que utilice un bucle for para imprimir una cuenta regresiva del 5 al 1.

Tu script debe:

  1. Comenzar con la línea shebang (#!/bin/bash)
  2. Usar un bucle for con expansión de llaves para iterar a través de los números del 5 al 1 en orden descendente
  3. Imprimir cada número en su propia línea con el formato: Countdown: [number]

Haz que el script sea ejecutable y ejecútalo. Tu salida debe ser:

Countdown: 5
Countdown: 4
Countdown: 3
Countdown: 2
Countdown: 1

Pista: Usa {5..1} para crear un rango descendente. Dentro del bucle, usa echo "Countdown: $i" donde i es tu variable de bucle.

Pruébalo tú mismo

Terminal
quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Fundamentos