next up previous contents index
Next: Redirezione dell'input Up: Standard Input e Standard Previous: Concetti di Unix

   
Redirezione dell'output

Una caratteristica importante di UNIX è la capacità di redirigere l'output. Questo vi permette, invece di vedere i risultati di un comando, di registrarli in un file o di mandarli direttamente alla stampante. Per esempio, per redirigere l'output del comando ls /usr/bin, metteremo un segno > alla fine della linea e diremo in quale file vogliamo che sia messo l'output:
78#78
Come potete vedere, invece di scrivere i nomi di tutti i file, il comando crea un nuovo file nella home directory; proviamo a vederlo con il comando cat. Se tornate indietro, ricorderete che cat era un comando apparentemente inutile che copiava quello che scrivevate (lo standard input) sul terminale (standard output). cat può anche stampare un file sullo standard output se gli date il file come parametro:
79#79
L'output esatto del comando ls /usr/bin appare nel contenuto di lista. Tutto bene, anche se questo non ha risolto il problema originale.6.3 Comunque, cat fa qualcosa di interessante quando il suo output viene rediretto. Cosa fa il comando cat lista > nuovofile? Normalmente, > nuovofile dice ``prendere tutto l'output del comando e metterlo in nuovofile''. L'output del comando cat lista è il file lista. In questo modo abbiamo inventato un metodo nuovo (e non molto efficiente) per copiare i file. E che dire del comando cat > pippo? cat da solo legge ogni linea inserita dal terminale (standard input) e stampa tutto nello standard output finché non legge
38#38. In questo caso, lo standard output è stato rediretto nel file pippo. Adesso cat è servito come un rudimentale editor (programma per scrittura testi):
/home/larry$ cat > pippo
Oggi è una bella giornata.
premete Ctrl-d
Abbiamo creato quindi il file pippo che contiene la frase ``Oggi è una bella giornata''. Un altro uso del versatile comando cat è con catenare più file insieme: cat stampa tutti i file che gli vengono passati come parametro, un file dopo l'altro. Così il comando cat lista pippo stampa il listato della directory /usr/bin, e poi la nostra frase. In questo modo, il comando cat lista pippo > listaepippo creerà un nuovo file contenente sia lista sia pippo.  
next up previous contents index
Next: Redirezione dell'input Up: Standard Input e Standard Previous: Concetti di Unix
Eugenia Franzoni
1998-09-29