Filtres sur les fichiers (globbing)
Les filtres sur les fichiers (globbing) permettent de les sélectionner de manière intelligente. En voici les principes.
1. Méta-caractères
- Les méta caractères ont un sens spécial pour le shell. Ils sont la plupart du temps utilisés comme jokers, pour correspondre à plusieurs noms de fichiers ou de dossiers en utilisant un minimum de lettres.
- Les caractères d’entrée (
<
), de sortie (>
) et le tube (|
) sont également des caractères spéciaux ainsi que le dollar ($
) utilisé pour les variables. Notez que ces caractères sont rarement utilisés pour nommer des fichiers standards.
2. Caractères génériques ou jokers
2.1. Masque générique *
Le caractère *
remplace n’importe quel nombre de caractères :
ls /usr/bin/b*
Liste tous les programmes commençant par “b”.
2.2. Masque de caractère ?
Le caractère ?
remplace n’importe quel caractère unique :
ls /usr/bin/?b*
Liste tous les programmes ayant un “b” pour seconde lettre.
2.3. Plage de valeurs [ ]
[ ]
est utilisé pour définir une plage de valeurs :
ls /usr/bin/linux[0-9][0-9]
liste tous les fichiers commençant par “linux” suivis de deux chiffres.
ls /usr/bin/[!Aa-Yy]*
liste tous les fichiers qui ne commencent pas par un “a” ni par un “A” jusqu’à “y”/”Y”.
2.4. Filtre {chaîne1,chaîne2}
{chaîne1,chaîne2}
même si ce n’est pas simplement un joker de nom de fichiers, on peut l’utiliser pour filtrer des noms de fichiers :
ls index.{htm,html}