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!"
doneEste 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"
doneEsto 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"
doneEsto 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.
Desafío
FácilCrea un script de shell llamado countdown.sh que utilice un bucle for para imprimir una cuenta regresiva del 5 al 1.
Tu script debe:
- Comenzar con la línea shebang (
#!/bin/bash) - 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
- 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: 1Pista: Usa
{5..1}para crear un rango descendente. Dentro del bucle, usaecho "Countdown: $i"dondeies tu variable de bucle.
Pruébalo tú mismo
Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Todas las lecciones de Fundamentos
4Directorios
Crear Un DirectorioCopiar Un DirectorioMover Y Renombrar Un DirectorioEliminar Un DirectorioResumen - Operaciones Con Directorios7Contenido de Archivos
Head y TailConteo de PalabrasComando SortComando UniqGrep BásicoGrep con FlagsResumen - Detective de Texto10Proyecto Analizador de Registros
Resumen del ProyectoVisualizando el Archivo de Registro13Fundamentos de Scripting en Shell
Qué es un Script de ShellCrear y Ejecutar un ScriptVariables en ScriptsEntrada de Usuario en ScriptsSentencia IfBucle ForBucle WhileRepaso - Adivina el Número2Navegación
Imprimir Directorio de TrabajoListar ArchivosCambiar de DirectorioRutas Absolutas vs RelativasDirectorio Home y RaízRepaso - Encuentra tu Camino8Redirección
Salida EstándarSobrescribir en un ArchivoAnexar a un ArchivoEntrada EstándarError EstándarResumen - Constructor de Registro11Permisos
Entendiendo PermisosLeyendo PermisosChmod con NúmerosChmod con SímbolosPropiedad de ArchivosResumen - Bloquéalo14Proyecto de Script de Copia de Seguridad
Visión General del ProyectoObteniendo la Ruta de Origen3Archivos
Crear un ArchivoLeer un ArchivoCopiar un ArchivoMover y Renombrar un ArchivoEliminar un ArchivoResumen - Operaciones con Archivos6Comodines y Patrones
El comodín asteriscoEl comodín interroganteComodines de corchetesCombinando comodinesRepaso - Operaciones selectivas9Tuberías
Qué es una tuberíaEncadenando dos comandosEncadenando múltiples comandosTubería con GrepResumen - Tubería de datos