11.07.2015 Views

Amministrare GNU/Linux - Cia

Amministrare GNU/Linux - Cia

Amministrare GNU/Linux - Cia

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

2.1. L’INTERFACCIA A LINEA DI COMANDO. 61directory corrente, e se ne troverà di corrispondenti espanderà il nome contenente il caratterejolly nella lista dei file. 22Come nel caso del DOS o del VMS, il carattere “*” indica un numero arbitrario di caratteriqualsiasi mentre il carattere “?” indica un solo carattere qualunque. Ma oltre a queste due wildcardelementari la shell ne supporta di più sofisticate; così si possono indicare elenchi di possibilialternative per un singolo carattere, ponendole fra due parentesi quadre. Le alternative possonoessere espresse con una lista dei caratteri voluti messi uno di seguito all’altro, mentre si possonospecificare degli intervalli (corrispondenti a tutti i caratteri compresi fa i due estremi) usandodue caratteri separati da un “-”. Si può inoltre invertire la selezione dei caratteri specificati fraparentesi quadre precedendo la lista o l’intervallo con un carattere di “^”. Infine come ultimamodalità di espansione si può utilizzare il carattere “~” per indicare la home directory dell’utentecorrente, mentre si può usare la notazione ~username per indicare la home directory di un altroutente.Per capire meglio facciamo alcuni esempi di filename globbing: supposto che per essi vengausata la solita estensione .pdf, si potranno vedere tutti i documenti PDF presenti in unadirectory con una riga di comando come:piccardi@anarres:~/Truelite/documentazione/corso$ ls *.pdfStruttura.pdf baseadm.pdf corso.pdf netadmin.pdfmentre si potranno selezionare tutti i file il cui nome è lungo esattamente sette caratteri con unariga di comando del tipo:piccardi@anarres:~/Truelite/documentazione/corso$ ls ???????fdl.aux fdl.texse invece vogliamo vedere i file i cui nomi finiscono in c o in g potremo usare:piccardi@anarres:~/Truelite/documentazione/corso$ ls *[cg]Struttura.log baseadm.log corso.log netadmin.log ringraziamenti.logStruttura.toc baseadm.toc corso.toc netadmin.toc texput.logmentre per selezionare i file PDF il cui nome inizia con una lettera maiuscola potremo usare:piccardi@anarres:~/Truelite/documentazione/corso$ ls [A-Z]*.pdfStruttura.pdfinfine se ci interessano i file Latex il cui nome non inizia per lettera maiuscola potremo usare:piccardi@anarres:~/Truelite/documentazione/corso$ ls [^A-Z]*.texbaseadm.tex corso.tex netadmin.tex shell.texconfig.tex fdl.tex ringraziamenti.tex struttura.texSi tenga presente che il meccanismo dell’espansione è quello descritto per cui il risultato dellastessa è che viene passato al comando come argomento (o come argomenti, se sono più di uno)il nome (o i nomi) del file che corrisponde, per cui ad esempio se si fosse eseguita la riga dicomando:piccardi@anarres:~/Truelite/documentazione/corso$ ls ???Entries Repository Root22 questo significa che al programma sarà passato, invece di un singolo argomento, la lista dei nomi dei filecorrispondenti all’espansione dei caratteri jolly.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!