Menu
CoddyTech

Combiner les jokers

Fait partie de la section Fondamentaux du Journey Terminal de Coddy. Leçon 28 sur 82.

La véritable puissance des caractères génériques se révèle lorsque vous les combinez. Vous pouvez mélanger *, ? et [] dans un même motif pour obtenir une correspondance de fichiers très précise.

Étant donné ce système de fichiers :

photo_1.jpg
photo_2.jpg
photo_10.jpg
photo_1.png
photo_2.png
report_1.txt
report_2.txt
notes.txt

Combiner * et [] :

Liste tous les fichiers image (à la fois .jpg et .png) :

ls *.{jpg,png}    # en utilisant l’expansion d’accolades
ls *.[jp]*        # correspond à .jpg, .png, .jpeg, etc.

Combinaison de ? et [] :

Liste uniquement les fichiers photo à un seul chiffre :

ls photo_[0-9].jpg   # correspond uniquement à photo_1.jpg et photo_2.jpg

Combiner les trois :

Faites correspondre n’importe quel fichier de rapport avec un seul chiffre :

ls *_[0-9].txt     # correspond à report_1.txt et report_2.txt

Faites correspondre les fichiers qui commencent par n’importe quelle lettre suivie de caractères spécifiques :

ls [pr]*_?.txt    # commence par p ou r, puis n’importe quelle suite de caractères, puis un trait de soulignement, un caractère et .txt

Utiliser des caractères génériques avec d’autres commandes :

Déplacez toutes les photos jpg à un seul chiffre dans un dossier :

mv photo_[0-9].jpg archive/

Supprimez tous les fichiers .log de n’importe quel sous-dossier :

rm */*.log
challenge icon

Défi

Facile

Utilise une combinaison de caractères génériques pour ne lister que les fichiers photo .jpg qui ont un numéro à un seul chiffre, comme photo_1.jpg et photo_2.jpg, mais pas photo_10.jpg ni aucun fichier .png.

Indice : Combine le texte fixe photo_, une plage entre crochets pour les chiffres uniques et l’extension .jpg en un seul motif.

Essayez vous-même

Terminal
quiz iconTestez-vous

Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.

Toutes les leçons de Fondamentaux

Entraînez-vous par vous-même : Playground Terminal