Wildcards: per usare al massimo il vostro terminale

L’avevo detto e l’ho fatto: ecco un articolo sull’utilizzo delle wildcards.

Le wildcards non sono altro che determinate combinazioni di caratteri che vi consentiranno di utilizzare al meglio il vostro terminale poichè vi consentiranno di selezionare i file a regola d’arte.

 

Probabilmente molti di voi sanno che l’asterisco funge da carattere jolly che significa “qualsiasi cosa”.

Il comando:

rm *

non fa altro che rimuovere tutti i file presenti in una directory (meno quelli nascosti, attenzione).

Ma se volessimo fare una selezione più precisa? Ecco una serie di altri caratteri speciali che possono essere utilizzati:

? = indica un numero esatto di caratteri. Ad esempio:

rm *.??? #elimina tutti i file con un estensione di almeno tre caratteri

[abcde] = indica solo i caratteri indicati. Ad esempio:

rm [ab]* #eliminerà tutti i file che iniziano per a e per b

[a-c] = fa la stessa cosa, ma invece che dei caratteri ben precisi gli si assegna una serie. Ad esempio:

rm [A-Z]* #eliminerà tutti i file che iniziano con una maiuscola

[!abcde] = farà eccezione per le lettere segnate. Ad esempio l’abbiamo usato nel nostro tutorial su come copiare cartelle e file nascosti:

rm .[!.]* #eliminerà tutto ciò che inizia per punto ed è seguito da qualsiasi altra cosa che non sia un punto

[!A-Z] = come sopra, tratterà come eccezione tutto ciò che si trova nell’insieme dato. Ad esempio:

rm *[!A-Z]* #rimuoverà tutti i file che sono composti da caratteri diversi dalla lettere maiuscole.

{ciao,bene} = utilizzerà in sequenza i termini inseriti. Ad esempio:

rm *.{avi,mpg,flv,mpeg} #eliminerà prima tutti i file con le estensioni avi, mpg, mpeg e flv.

Tutte queste opzioni possono essere combinate fra loro e possono essere utilizzate con qualsiasi comando che accetti dei file come variabili.