Molte utility della riga di comando possono prendere il loro input da una pipe o come argomento del nome file. Per gli script di shell lunghe, trovo che iniziare la catena con un cat
renda più leggibile, specialmente se il primo comando avrebbe bisogno di argomenti a più righe.
Confrontare
sed s/bla/blaha/ data \
| grep blah \
| grep -n babla
e
cat data \
| sed s/bla/blaha/ \
| grep blah \
| grep -n babla
Quest'ultimo metodo è meno efficiente? In tal caso, la differenza è sufficiente a preoccuparsi se lo script viene eseguito, diciamo, una volta al secondo? La differenza nella leggibilità non è enorme.
cat
. Tuttavia, penso che la domanda più grande qui sia la leggibilità del codice che spesso è una priorità rispetto alle prestazioni. Quando più veloce può effettivamente essere scritto più bello , perché no? Sottolineare il problema con di cat
solito porta l'utente ad avere una migliore comprensione delle condotte e dei processi in generale. Ne vale la pena, quindi la prossima volta scrivono un codice comprensibile.
cat
; il punto di Caleb sull'uso delle funzioni e del reindirizzamento risolve anche questo.)