Le terminal Linux regorge de commandes utiles, mais peu sont aussi puissantes que l'apparence simple grep. Ça signifie Impression d'expression régulière globale, en imprimant les résultats des recherches système définies par l'utilisateur pour des collections de caractères.

grep est extrêmement puissant mais peut être assez intimidant à utiliser, donc aujourd'hui, vous apprendrez quelques bases. Si vous recherchez des informations dans les documents de votre machine, vous recherchez généralement plusieurs mots à la fois.

Cet article se concentre sur la recherche de plusieurs chaînes à l'aide de grep et vous montrera quelques trucs et astuces similaires pour l'utilisation de grep en général.

Recherche de plusieurs chaînes dans grep

Avant de commencer, vous devez vous assurer que vous maîtrisez quelques notions de base sur Linux. Tout d'abord, vous devrez être en mesure d'afficher un terminal - sur la plupart des systèmes, vous le faites avec la combinaison de touches Ctrl + Alt + T, ou via le menu des applications.

Vous devrez également savoir comment référencer des fichiers par chemin à l'aide du terminal. Par exemple, si vous souhaitez entrer le chemin d'un document texte situé dans un dossier appelé travail à l'intérieur de domicile dossier, vous le feriez référence en utilisant ce format :

~/work/textdocument.txt

Cette syntaxe, en utilisant le ~ et /, suivi de l'emplacement du fichier dans le dossier de départ, est ce que vous utiliserez pour montrer à la commande grep les fichiers à rechercher.

Disons, par exemple, que vous vouliez trouver toutes les occurrences des mots abeille et vanessa dans un document texte contenant le script du film Bee de 2007. La syntaxe ressemble à ceci :

grep -E 'abeille| Vanessa' ~/work/beescript.txt

Lorsque vous exécutez cette commande, vous récupérez une liste de chaque ligne du document contenant le mot abeille ou le mot vanessa.

Décomposons un peu cette commande :

grep -E

La première partie exécute la commande grep avec le -E option. Cela dirige grep pour rechercher en utilisant un Eexpression régulière étendue. Différents types d'expressions régulières sont un sujet pour un autre jour - et maîtriser les expressions régulières prend un durée de vie, mais pour les besoins de ce didacticiel, la commande bold-E vous permet de rechercher plusieurs chaînes à l'aide de grep.

grep -E 'abeille| Vanessa'

La partie suivante contient les chaînes que vous souhaitez rechercher. Ils doivent être contenus entre guillemets simples, avec un tube entre chaque mot.

grep -E 'abeille| Vanessa' ~/work/beescript.txt

La dernière partie de l'appel grep prend le chemin d'accès au fichier que vous souhaitez rechercher; dans ce cas, le scénario du film Bee de 2007.

grep Trucs et astuces

C'est un bon début, mais il y a beaucoup de façons pratiques d'utiliser grep. Maintenant que vous savez comment trouver plusieurs chaînes, voici quelques commandes qui peuvent faire passer ce pouvoir au niveau supérieur :

grep -E 'abeille| Vanessa' ~/work/beescript.txt ~/fun/mybeestory.txt

Ceci est très similaire à la commande précédente, sauf qu'elle renvoie toutes les lignes contenant abeille et Vanessa à la fois du script du film Bee et de mon propre fichier texte d'histoire Bee.

Cependant, toutes ces mentions d'abeilles deviennent assez difficiles à lire.

grep -E 'abeille| Vanessa' ~/work/beescript.txt ~/fun/mybeestory.txt | moins

Cela prend la même commande grep et la dirige dans moins. Cela ouvre les résultats dans un format facile à naviguer, vous permettant de faire défiler vers le haut et vers le bas à l'aide du j et k clés et rechercher dans les résultats à l'aide des / clé.

grep -E 'abeille| Vanessa' ~/work/beescript.txt ~/fun/mybeestory.txt > beeresults.txt

Tout comme la commande less, la commande susmentionnée prend les résultats de grep et les enregistre tous dans un fichier séparé. Vous pouvez ensuite ouvrir ce fichier dans votre éditeur de texte préféré pour une édition ultérieure.

En rapport: La feuille de triche de référence des commandes Linux

Travailler avec grep sous Linux

J'espère que vous avez une idée de la puissance de grep - et cela n'effleure même pas la surface. Allez-y, et grep !

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

Vous êtes-vous déjà demandé ce que signifie Grep? Voici la véritable histoire derrière la création de Grep.

Lire la suite

PartagerTweeterE-mail
Rubriques connexes
  • Linux
  • Commandes Linux
  • Shell bash Linux
A propos de l'auteur
Ian Buckley (219 articles publiés)

Ian Buckley est un journaliste indépendant, musicien, interprète et producteur vidéo vivant à Berlin, en Allemagne. Lorsqu'il n'écrit pas ou n'est pas sur scène, il bricole de l'électronique DIY ou du code dans l'espoir de devenir un savant fou.

Plus de Ian Buckley

Abonnez-vous à notre newsletter

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

Cliquez ici pour vous abonner