Come posso salvare l'output di una pipe?
La shell ci permette di reindirizzare l'output di una sequenza di comandi collegati tramite pipe:
cut -d , -f 2 seasonal/*.csv | grep -v Tooth > teeth-only.txt
Tuttavia, > deve comparire alla fine della pipeline:
se provi a usarlo in mezzo, così:
cut -d , -f 2 seasonal/*.csv > teeth-only.txt | grep -v Tooth
allora tutto l'output di cut viene scritto in teeth-only.txt,
quindi non rimane nulla per grep
e questo resta in attesa all'infinito di qualche input.
Cosa succede se mettiamo il reindirizzamento all'inizio di una pipeline come in:
> result.txt head -n 3 seasonal/winter.csv
Questo esercizio fa parte del corso
Introduzione alla Shell
Esercizio pratico interattivo
Passa dalla teoria alla pratica con uno dei nostri esercizi interattivi
Inizia esercizio