next up previous contents index
Next: Comandi di elaborazione Up: Piccoli programmi potenti Previous: Statistiche del sistema

Cosa c'è nel file?

Ci sono due comandi importanti di UNIX che servono ad elencare file: cat e more. Ho parlato di entrambi nel capitolo [*].
cat  [-nA] [file1 file2 ...fileN]
cat non è un comando amichevole--non aspetta che voi leggiate il file, ed è spesso usato in congiunzione con le pipe; ha però alcune utili opzioni da linea di comando: per esempio, n numera tutte le linee nel file, e A mostra i caratteri di controllo come caratteri normali invece di mostrare (forse) strane combinazioni sullo schermo (ricordatevi, per vedere queste strane e forse ``poco utili'' opzioni, usate il comando man: man cat). cat accetta input dallo stdin se non viene specificato nessun file nella linea di comando.
more  [-l] [+numero-linea] [file1 file2 ...fileN]
more è molto più utile, ed è il comando che preferirete usare quando dovrete leggere un file di testo ASCII. L'unica opzione interessante è l, che dice a more che non siete interessati a trattare il carattere 106#106 come carattere di ``nuova pagina''. more partirà da uno specifico numero di linea. Siccome more è un comando interattivo, ho riassunto i principali comandi da dargli:
107#107
Mostra la prossima schermata di testo.
108#108
Fa scorrere lo schermo di 11 linee, o circa metà di uno schermo normale (25 linee).
109#109
Cerca un'espressione regolare. Siccome un'espressione regolare può essere abbastanza complicata, potete digitare una stringa di testo da ricercare. Per esempio, /rana 4#4 ricerca la prossima parola ``rana'' nel file corrente. Una barra seguita da 4#4 ripete la ricerca dell'ultima espressione.
110#110
Anche questo ricerca la successiva posizione dell'espressione.
111#111 110#110
Se specificate più di un file nella linea di comando, vi sposterà nel prossimo file.
111#111 112#112
Vi sposterà nel file precedente.
41#41
Esce da more.
head  [-linee] [file1 file2 ...fileN]
head mostra le prime dieci linee dei file elencati, o le prime dieci linee dello stdin se non è specificato nessun file nella linea di comando. Ogni opzione numerica viene interpretata come il numero di linee da stampare, così head -15 pippo stampa le prime quindici linee del file pippo.
tail  [-linee] [file1 file2 ...fileN]
Come head, tail mostra solo una frazione del file. Naturalmente, tail mostra la fine del file, o le ultime dieci linee che arrivano dallo stdin. Anche tail accetta opzioni che specificano il numero di linee.
file [file1 file2 ...fileN]
Il comando file prova ad identificare in quale formato è scritto un particolare file. Dato che non tutti i file hanno estensioni o altri marcatori che li identificano, il comando file esegue dei controlli rudimentali per cercare di indovinare cosa contengono. Fare attenzione, comunque, perché è possibile che file faccia un'identificazione sbagliata.
next up previous contents index
Next: Comandi di elaborazione Up: Piccoli programmi potenti Previous: Statistiche del sistema
Eugenia Franzoni
1998-09-29