Retour au cours

27. Wildcards avancés : ensembles de caractères (`[]`) et négation

Les Bases de Linux : de Zéro à Héros du CLI

Un contrôle plus fin sur les motifs

Ensembles de caractères ([...])

Les crochets correspondent à n'importe quel caractère unique listé à l'intérieur des crochets.

Exemple 1 : Correspondance de lettres spécifiques

bash $ ls [abc]fichier.txt

Correspond à afichier.txt, bfichier.txt ou cfichier.txt

Exemple 2 : Correspondance d'une plage de chiffres

bash $ rm rapport[1-9].pdf

Supprime les rapports de 1 à 9 (rapport1.pdf, rapport9.pdf)

Négation ([^...])

Placer un accent circonflexe (^) à l'intérieur des crochets nie l'ensemble, correspondant à tout caractère qui n'est pas listé.

bash $ ls *[^0-9].log

Correspond aux fichiers logs dont le nom ne se termine PAS par un chiffre.

Les Wildcards sont appliqués par le shell avant que la commande ne s'exécute. Le shell développe le motif en une liste de noms de fichiers correspondants, puis transmet cette liste à la commande (cp, rm, ls, etc.).