Filtres sur les fichiers (globbing)
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}