Cum pot rula mai multe comenzi într-o singură buclă?
Afișarea numelor de fișiere este utilă pentru depanare, dar scopul real al buclelor este să execute operații pe mai multe fișiere. Bucla de mai jos afișează a doua linie din fiecare fișier de date:
for file in seasonal/*.csv; do head -n 2 $file | tail -n 1; done
Are aceeași structură ca și celelalte bucle pe care le-ai văzut deja: singura diferență este că corpul ei este un pipeline format din două comenzi, nu una singură.
Acest exercițiu face parte din cursul
Introducere în Shell
Instrucțiuni pentru exercițiu
Scrie o buclă care afișează ultima înregistrare din iulie 2017 (2017-07) din fiecare fișier sezonier. Ar trebui să producă un rezultat similar cu:
grep 2017-07 seasonal/winter.csv | tail -n 1
dar pentru fiecare fișier sezonier în parte. Te rugăm să folosești file ca nume al variabilei de buclă și ține minte să parcurgi lista de fișiere seasonal/*.csv (în loc de 'seasonal/winter.csv', ca în exemplu).
Exercițiu interactiv practic
Transformă teoria în practică cu unul dintre exercițiile noastre interactive
Începe exercițiul