HFS: Maschera File

From rejetto wiki
Jump to: navigation, search

Cos'è?[edit]

Una maschera file ("file mask") denota un set di files.
Un esempio potrebbe essere il seguente: *.jpg;*.gif.
Questo modello denota ogni file con estensione .jpeg e .gif.
Ricorda che i caratteri usati nei nomi dei files non sono "case sensitive": per cui *.jpg e *.JPG (cioè scritto in minuscolo e/o maiuscolo) si riferiscono esattamente allo stesso set di files.

Come funziona?[edit]

L'esempio precedente mostra una doppia maschera file.
Presenta due elementi separati da punto e virgola (;): *.jpg e *.gif.
Il punto e virgola è utilizzato per unire maschere multiple essendo, infatti, un carattere "speciale".
Nelle maschere file possono esistere esclusivamente tre tipi di carattere speciale: ; * e ?.

L'asterisco (*)[edit]

La stella (anche denominata "asterisco") corrisponde a: qualsiasi stringa di caratteri.
Se la maschera file contiene solo l'asterisco, denoterà QUALSIASI tipo di file.

Se inserisci la lettera A prima dell'asterisco A*, verrà evidenziato qualsiasi file che inizia per A.

Se inserisci la lettera A dopo l'asterisco *A, verrà evidenziato qualsiasi file che finisce per A.

A*B evidenzia qualsiasi file che inizia con una A e finisce con una B.

L'esempio precedente visualizza una maschera per *.jpg che denota qualsiasi file la cui denominazione termina con .jpg (che corrisponde al tipo immagine jpeg).

I file jpeg possono essere relativamente inusuali in quanto di solito terminano con .jpeg e più raramente con .jpe . (La parte del nome di un file presente dopo il punto è chiamata: estensione del file ed è, normalmente, limitata a tre caratteri).
Puoi usare la maschera .jp* per denotare tutti i tipi di files jpeg.

L'asterisco corrisponde anche una "null string": A*.jpg denota files come A1.jpg , Adfgg.jpg ma anche A.jpg.

Il punto interrogativo (?)[edit]

Il punto interrogativo corrisponde ad un ''singolo carattere''.
Un esempio può essere A?B che denota ogni nome file con la lunghezza di tre caratteri, iniziante con la lettera A e che termina con la lettera B.
La lunghezza è fissata a tre caratteri perchè ? può essere sostituito da solo un carattere.
Thus the ? does not match the null string as the * does.