INDIETRO
 4.  Ambiente di lavoro
AVANTI

la bash (continua - 4)

Ogni programma Unix ha a sua disposizione tre flussi di dati standard: Generalmente Standard output e Standard error vengono mostrati sullo schermo.
La bash può ridirigere questi flussi di dati, e si usano:
<, <<, >, >> per le ridirezioni, eventualmente uniti al numero 0,1,2 che si riferisce a Standard input, Standard output, Standard error rispettivamente.
Per esempio   ls  -la  >  pippo  scrive il listato sul file pippo invece di mostrarlo sul monitor;   ls  -la  >  pippo  2>pippo-err  scrive inoltre gli errori (tipo Permission denied e simili) su pippo-err invece di mostrarli sullo schermo.

Il carattere | (pipe) permette di fare una cosa interessantissima, e cioè di prendere lo Standard output di un comando ed usarlo come Standard input di un secondo comando.

Per esempio in  ps   aux |less  la bash lancia per primo il comando ps   aux, prende lo Standard output del comando (cioè il lungo listato dei processi) e lo usa come Standard input del comando less . Cioè tutto si comporta come se avessimo mandato l'output di ps   aux su un file provvisorio e poi avessimo usato less per leggere una pagina alla volta tale file provvisorio, cancellandolo quando usciamo dal less.
Altro esempio: ps   aux |grep  mozilla mostra solo le righe in cui compaia la parola mozilla.  
INDIETRO
Laboratorio di Comunicazione mediante Calcolatore - Sergio Steffè - AA 2019/2020 - PISA
AVANTI