10 exemples pratiques de la commande Linux Grep

10 exemples pratiques de la commande Linux Grep

La commande grep permet d'accéder à l'utilitaire grep, un puissant outil de traitement de fichiers utilisé pour rechercher des modèles dans les fichiers texte. Il a de nombreux cas d'utilisation pratiques et est certainement l'une des commandes Linux les plus utilisées. Ce guide illustre quelques commandes grep Linux simples mais utiles qui ont des utilisations réelles.





Exemple de fichier pour la démonstration

Nous avons créé un fichier de référence pour aider les lecteurs à mieux comprendre grep. Vous pouvez créer une copie de ce fichier en exécutant la commande shell suivante dans votre terminal.





différence entre airpod 1 et 2
cat <> test-file
This is a simple text file that contains
multiple strings as well as some telephone numbers
(555) 555-1234 (567) 666-2345
and email plus web addresses
john@doe.com
https://google.com
ftp://mywebserver.com
END

1. Rechercher du texte dans des fichiers

Pour rechercher un motif de texte dans un fichier, exécutez simplement grep suivi du nom du motif. Spécifiez également le nom du fichier qui contient le texte.





grep 'email' test-file

Cette commande affichera la ligne dans notre fichier-test qui contient le mot e-mail . Vous pouvez également rechercher le même texte dans plusieurs fichiers à l'aide de grep.

grep 'example' /usr/share/dict/american-english /usr/share/dict/british-english

La commande ci-dessus affiche toutes les instances du mot Exemple dans le anglais américain et Anglais britannique fichiers de dictionnaire.



2. Trouvez les mots correspondants exacts

La commande grep Linux illustrée dans l'exemple précédent répertorie également les lignes avec des correspondances partielles. Utilisez la commande ci-dessous si vous n'avez besoin que des occurrences exactes d'un mot.

grep -w 'string' test-file

Les -dans ou --word-regexp L'option de grep limite la sortie aux correspondances exactes uniquement. Grep se compose de quelques indicateurs supplémentaires qui peuvent également être utilisés avec la commande par défaut.





Connexes : Comment Grep a-t-il obtenu son nom ? L'histoire derrière la création de Grep

3. Ignorer les distinctions de casse

Par défaut, grep recherche les modèles en respectant la casse. Cependant, vous voudrez peut-être désactiver cette option si vous ne savez pas dans quel cas se trouve le motif à l'avance.





grep -i 'this' test-file

Utilisez le -je ou --ignore-case option pour désactiver la sensibilité à la casse.

4. Comptez le nombre de motifs

Les -c le drapeau représente compter . Il affiche le nombre de correspondances trouvées pour un modèle particulier. Les administrateurs peuvent l'utiliser pour récupérer des informations spécifiques sur le système.

Vous pouvez pipe la commande ps avec grep pour compter les processus qui appartiennent à l'utilisateur actuel.

ps -ef | grep -c $USER

La commande suivante affiche le nombre de MP3 fichiers présents dans un répertoire.

ls ~/Music | grep -c .mp3

5. Afficher les numéros de ligne contenant des correspondances

Vous voudrez peut-être trouver les numéros de ligne qui contiennent une certaine correspondance. Utilisez le -n ou --numéro de ligne option de grep pour y parvenir.

cat /etc/passwd | grep -n rubaiat

Cette option est particulièrement utile pour le débogage des codes sources et le dépannage des fichiers journaux. Pour afficher tous les numéros des lignes dans le ~/.vimrc qui sont utilisés pour configurer l'éditeur de texte Vim :

grep -n 'set' ~/.vimrc

6. Rechercher des noms de fichiers à l'aide d'extensions

Pour obtenir une liste de tous les MP3 fichiers présents dans le ~/Musique annuaire:

ls ~/Music/ | grep '.mp3'

Vous pouvez remplacer .mp3 avec d'autres extensions pour localiser des fichiers spécifiques. La commande suivante répertorie tous les php fichiers présents dans le répertoire de travail courant.

comment accélérer les téléchargements xbox
ls | grep '.php'

7. Trouver des modèles dans les fichiers compressés

La commande grep Linux peut également trouver des modèles dans les fichiers compressés. Vous devrez utiliser le zgrep commande pour le faire, cependant. Tout d'abord, créez une archive compressée de notre fichier-test en tappant:

gzip test-file

Maintenant, vous pouvez rechercher du texte ou d'autres motifs dans l'archive résultante.

zgrep email test-file.gz

8. Trouver des adresses e-mail

Les administrateurs peuvent également répertorier les adresses e-mail à partir de fichiers texte à l'aide de la commande grep Linux. L'exemple suivant fait cela en recherchant un modèle d'expression régulière.

grep '^[a-zA-Z0-9]+@[a-zA-Z0-9]+.[a-z]{2,}' test-file

Vous pouvez trouver des expressions régulières pour effectuer des tâches similaires ou vous pouvez les créer vous-même si vous savez comment elles fonctionnent.

9. Trouver des numéros de téléphone à l'aide de Grep

Vous pouvez utiliser des expressions régulières grep pour filtrer les numéros de téléphone d'un fichier texte. Notez que vous devrez modifier le modèle pour qu'il corresponde au type de numéros de téléphone dont vous avez besoin.

grep '(([0-9]{3})|[0-9]{3})[ -]?[0-9]{3}[ -]?[0-9]{4}' test-file

La commande susmentionnée filtre les numéros de téléphone américains à dix chiffres.

10. Trouver des URL à partir de fichiers sources

Nous pouvons tirer parti de la puissance de grep pour répertorier les URL trouvées dans les fichiers texte. La commande ci-dessous imprime toutes les URL présentes dans le fichier-test .

grep -E '^(http|https|ftp):[/]{2}([a-zA-Z0-9-.]+.[a-zA-Z]{2,4})' test-file

Nous utilisons à nouveau le -ET option pour les expressions régulières étendues. Vous pouvez également utiliser le egrep commande pour éviter d'ajouter ceci.

egrep '^(http|https|ftp):[/]{2}([a-zA-Z0-9-.]+.[a-zA-Z]{2,4})' test-file

Maîtriser la commande Linux Grep

Nous avons présenté plusieurs exemples utiles de la commande grep Linux pour résoudre les problèmes du monde réel. Bien que ces exemples illustrent la puissance de grep pour le traitement de texte, vous devrez maîtriser les expressions régulières si vous voulez être super productif avec grep.

Parfois, les utilisateurs de Linux se heurtent à certaines situations où ils ne peuvent pas se souvenir des différentes options liées à une commande. Espérons que le système d'exploitation Linux vous offre des moyens d'obtenir une aide en ligne de commande pour presque tous les utilitaires système.

Partager Partager Tweeter E-mail 7 façons d'obtenir de l'aide en ligne de commande sur Linux

Toutes les commandes essentielles pour découvrir les commandes Linux à partir de la ligne de commande

Lire la suite
Rubriques connexes
  • Linux
  • Linux
  • Commandes Linux
A propos de l'auteur Rubaïat Hossain(39 articles publiés)

Rubaiat est diplômé en informatique et passionné par l'open source. En plus d'être un vétéran d'Unix, il s'intéresse également à la sécurité des réseaux, à la cryptographie et à la programmation fonctionnelle. Il est un collectionneur passionné de livres d'occasion et a une admiration sans fin pour le rock classique.

Plus de Rubaiat Hossain

Abonnez-vous à notre newsletter

Rejoignez notre newsletter pour des conseils techniques, des critiques, des ebooks gratuits et des offres exclusives !

cacher un dossier dans windows 10
Cliquez ici pour vous abonner