IniziaInizia gratis

Come posso eseguire molti comandi in un unico ciclo?

Stampare i nomi dei file è utile per il debug, ma il vero scopo dei cicli è fare operazioni su più file. Questo ciclo stampa la seconda riga di ogni file di dati:

for file in seasonal/*.csv; do head -n 2 $file | tail -n 1; done

Ha la stessa struttura degli altri cicli che hai già visto: la sola differenza è che il corpo è una pipeline di due comandi invece di un singolo comando.

Questo esercizio fa parte del corso

Introduzione alla Shell

Visualizza il corso

Istruzioni dell'esercizio

Scrivi un ciclo che stampi l’ultima voce di luglio 2017 (2017-07) in ogni file stagionale. Dovrebbe produrre un output simile a:

grep 2017-07 seasonal/winter.csv | tail -n 1

ma per ogni file stagionale separatamente. Usa file come nome della variabile del ciclo e ricordati di iterare sulla lista di file seasonal/*.csv (invece di 'seasonal/winter.csv' come nell'esempio).

Esercizio pratico interattivo

Passa dalla teoria alla pratica con uno dei nostri esercizi interattivi

Inizia esercizio