La pipeline è il modo più conveniente per utilizzare l’output di un comando come input di un altro comando senza creare file intermedi. Si chiama così perché letteralmente in inglese il termine pipeline significa tubatura oppure oleodotto: con questa metafora si vuole rappresentare una linea di comandi separati dal segno “|” (barra verticale detta pipe) tale che l’output di un comando diventa l’input del comando successivo. Per esempio:
ls -l | lpr
condizione necessaria è che il comando a sinistra emetta i risultati sullo standard output e quello a destra li legga dalla standar input.
Nella pipeline è utile talvolta salvare il flusso di dati che passa da un comando ad un altro memorizzandolo in un file.
Questo è possibile con l’uso “tee” il comando si chiama così perchè realizza delle giunzioni a T come quelle dei tubi.
Il comando cattura copiandolo su file il flusso di dati della pipeline senza compromettere il flusso stesso.
Esempio:
ls> listato
cat listato
rm stato
ls | tee listato
mi mostra il file anche se l’ho cancellato e me lo crea.













