10 exemples pratiques utilisant des caractères génériques pour correspondre aux noms de fichiers en Linux

10 exemples pratiques utilisant des caractères génériques pour correspondre aux noms de fichiers en Linux

Faunes (également appelé les caractères méta) sont des symboles ou des caractères spéciaux qui représentent d'autres caractères. Vous pouvez les utiliser avec n'importe quelle commande telle que la commande ls ou commande RM Pour énumérer ou supprimer les fichiers correspondant à un critère donné, réceptivement.

Lire aussi: 10 exemples pratiques utiles sur les opérateurs de chaînage en Linux

Ces caractères génériques sont interprétés par le shell et les résultats sont renvoyés à la commande que vous exécutez. Il y a trois jokers principaux dans Linux:

  • Un astérisque (*) - correspond à une ou plusieurs occurrences de tout personnage, y compris aucun personnage.
  • Point d'interrogation (?) - représente ou correspond à une seule occurrence de n'importe quel caractère.
  • Personnages entre parenthèses ([]) - correspond à toute occurrence de caractère enfermé dans les crochets. Il est possible d'utiliser différents types de caractères (caractères alphanumériques): chiffres, lettres, autres caractères spéciaux, etc.

Vous devez choisir soigneusement le tableau générique à utiliser pour correspondre aux noms de fichiers corrects: il est également possible de les combiner tous en une seule opération comme expliqué dans les exemples ci-dessous.

Comment faire correspondre les noms de fichiers à l'aide de wilkcards dans Linux

Aux fins de cet article, nous utiliserons les fichiers suivants pour démontrer chaque exemple.

créer une sauvegarde.Liste des shot.sh lspace.SH Président.sh listopen.sh perdu.sh renommée-fichiers.sh topprocs.shot 

1. Cette commande correspond à tous les fichiers avec des noms commençant par l (qui est le préfixe) et se terminant par une ou plusieurs occurrences de n'importe quel personnage.

$ ls -l l * 
Liste des fichiers avec le caractère

2. Cet exemple montre une autre utilisation de * pour copier tous les noms de fichiers préfixés avec utilisateurs-0 et se terminant par une ou plusieurs occurrences de n'importe quel personnage.

$ mkdir -p utilisateurs-info $ ls utilisateurs-0 * $ mv -v utilisateurs-0 * Utilisateurs-info / # Option -V Flag permet une sortie verbeuse 
Liste et copiez tous les fichiers

3. La commande suivante correspond à tous les fichiers avec des noms commençant par l suivi par n'importe quel caractère unique et se terminant par St.shot (qui est le suffixe).

$ ls l?St.shot 
Faire correspondre le fichier avec le nom du caractère

4. La commande ci-dessous correspond à tous les fichiers avec des noms commençant par l suivi par l'un des personnages de la tranche carrée mais se terminant par St.shot.

$ ls l [abdcio] st.shot 
Fichiers assortis avec des noms

Comment combiner les jokers pour faire correspondre les noms de fichiers dans Linux

Vous pouvez combiner les jilèges pour construire des critères de correspondance de nom de fichiers complexes comme décrit dans les exemples suivants.

5. Cette commande correspondra à tous les noms de fichiers préfixés avec deux caractères suivis de St mais se terminant par une ou plusieurs occurrence de n'importe quel personnage.

$ ls $ ls ??St* 
Faites correspondre les noms de fichiers avec le préfixe

6. Cet exemple correspond aux noms de fichiers en commençant par l'un de ces personnages [CLST] et se terminant par une ou plusieurs occurrence de n'importe quel personnage.

$ ls $ ls [clst] * 
Faire correspondre les fichiers avec les caractères

7. Dans ces exemples, seuls des noms de fichiers commençant par l'un de ces personnages [CLST] suivi par l'un d'eux [io] puis tout caractère unique, suivi d'un t Et enfin, une ou plusieurs occurrence de tout personnage seront répertoriées.

$ ls $ ls [clst] [io]?t * 
Liste des fichiers avec plusieurs caractères

8. Ici, les noms de fichiers préfixés avec une ou plusieurs occurrence de n'importe quel caractère, suivi des lettres le goudron et se terminant par une ou plusieurs occurrence de tout caractère sera supprimé.

$ ls $ rm * Tar * $ ls 
Supprimer les fichiers avec des lettres de caractère

Comment faire correspondre les caractères définis dans Linux

9. Voyons maintenant comment spécifier un ensemble de caractères. Considérez les noms de fichiers ci-dessous contenant des informations sur les utilisateurs du système.

$ ls utilisateurs-111.Répertoriez les utilisateurs-1AA.Énumérez les utilisateurs-22a.Énumérez les utilisateurs-2AB.TXT USERS-2BA.Utilisateurs TXT-111.txt utilisateurs-1aa.TXT USERS-22A.TXT USERS-2AB.TXT USERS-2BA.TXT USERS-11A.TXT USERS-1AB.Énumérez les utilisateurs-2AA.TXT USERS-2BA.Énumérez les utilisateurs-12A.TXT USERS-1AB.TXT USERS-2AB.Énumérez les utilisateurs-2BA.liste 

Cette commande correspondra à tous les fichiers dont le nom commence par utilisateurs-i, suivi d'un nombre, d'une lettre ou d'un numéro en bas de cas, puis d'un nombre et se termine par une ou plusieurs occurrences de n'importe quel caractère.

$ ls utilisateurs- [0-9] [A-Z0-9] [0-9] * 

La commande suivante correspond aux noms de fichiers commençant par utilisateurs-i, suivi d'un nombre, d'une lettre ou d'un numéro inférieur ou supérieur, puis un nombre et se termine par une ou plusieurs occurrences de tout caractère.

$ ls utilisateurs- [0-9] [a-za-z0-9] [0-9] * 

Cette commande qui suit correspondra à tous les noms de fichiers commençant par utilisateurs-i, suivi d'un nombre, d'une lettre ou d'un nombre inférieur ou supérieur, puis une lettre inférieure ou supérieure et se termine par une ou plusieurs occurrences de tout caractère.

$ ls utilisateurs- [0-9] [A-ZA-Z0-9] [A-ZA-Z] * 
Faire correspondre les personnages dans les noms de fichiers

Comment nier un ensemble de caractères dans Linux

dix. Vous pouvez également nier un ensemble de caractères en utilisant le ! symbole. La commande suivante répertorie tous les noms de fichiers à commencer par utilisateurs-i, Suivi d'un nombre, tout caractère de dénomination de fichier valide en dehors d'un nombre, puis une lettre inférieure ou supérieure et se termine par une ou plusieurs occurrences de tout caractère.

$ ls utilisateurs- [0-9] [!0-9] [a-za-z] * 

C'est tout pour le moment! Si vous avez essayé les exemples ci-dessus, vous devriez maintenant avoir une bonne compréhension du fonctionnement des chances pour correspondre aux noms de fichiers à Linux.

Vous aimerez peut-être également lire ces articles suivants qui montrent des exemples d'utilisation des caractères génériques dans Linux:

  1. Comment extraire les fichiers TAR vers un répertoire spécifique ou différent de Linux
  2. 3 façons de supprimer tous les fichiers dans un répertoire, sauf un ou quelques fichiers avec des extensions
  3. 10 conseils utiles pour écrire des scripts de bash efficaces dans Linux
  4. Comment utiliser des expressions awk et régulières pour filtrer le texte ou la chaîne dans les fichiers

Si vous avez quelque chose à partager ou une question à poser, utilisez le formulaire de commentaire ci-dessous.