next up previous contents
Next: altre sostituzioni Up: sostituzioni Previous: sostituzioni   Contents

nomi di file

Quando ci si riferisce a file (o directory) 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

N.B. : questo comportamento è differente dal 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
Next: altre sostituzioni Up: sostituzioni Previous: sostituzioni   Contents
Giorgio F. Signorini 2011-11-14