¿Cómo puedo ejecutar muchos comandos en un solo bucle?
Imprimir los nombres de los archivos es útil para depurar, pero el verdadero propósito de los bucles es realizar distintas acciones con varios archivos. Este bucle imprime la segunda línea de cada archivo de datos:
for file in seasonal/*.csv; do head -n 2 $file | tail -n 1; done
Tiene la misma estructura que los otros bucles que ya has visto: lo único que difiere es que su cuerpo es una cadena de dos comandos en lugar de un solo comando.
Este ejercicio forma parte del curso
Introducción a Shell
Instrucciones de ejercicio
Escribe un bucle que imprima la última entrada de julio de 2017 (2017-07
) en cada archivo estacional. Debería producir una salida similar a:
grep 2017-07 seasonal/winter.csv | tail -n 1
pero para cada archivo estacional por separado. Utiliza file
como nombre de la variable de bucle, y recuerda recorrer la lista de archivos seasonal/*.csv
(en lugar de 'seasonal/winter.csv' como en el ejemplo).
Ejercicio interactivo práctico
Convierte la teoría en acción con uno de nuestros ejercicios interactivos
