next up previous contents
succ.: altre sostituzioni ..: proprietà delle shell prec.: interruzione di processi   Indice

sostituzioni: nomi di file

Nei nomi di file si possono usare caratteri ``jolly'':



carattere jolly significato
* un qualunque numero di caratteri (anche nessuno)
? un solo carattere
[abc] un solo carattere tra quelli citati tra parentesi


Esempi:



*.c tutti i file che finiscono per .c
/etc/* tutti i file della directory /etc
capitolo?.txt capitolo1.txt capitolo2.txt ... (ma non capitolo23.txt)
[ab]* tutti file che cominciano per a o per b


La shell verifica quali file corrispondono all'espressione indicata e li sostituisce pedissequamente nella riga di comando, che poi esegue: differenza da DOS!

Esempio: supponiamo che la directory corrente contenga i file

lettera.doc 
memo.txt 
riassunto.doc 
CV.doc
  1. Il comando

    cp *.doc ~/backup-dir
    si traduce nel comando

    cp lettera.doc riassunto.doc CV.doc ~/backup-dir
    che copia i tre file nella directory ~/backup-dir

  2. Attenzione! Il comando

    cp lettera.doc *.txt
diventa
cp lettera.doc memo.txt
che copia il primo file nel secondo, distruggendolo!

NOTA: in DOS, il comando

copy lettera.doc *.txt
significa invece

copy lettera.doc lettera.txt


next up previous contents
succ.: altre sostituzioni ..: proprietà delle shell prec.: interruzione di processi   Indice
Giorgio F. Signorini 2006-04-20