Filtrage de base avec grep

L'une des commandes que j'utilise le plus dans le terminal est grep, même plus que cd o ls.

grep Il a de nombreuses options et offre des possibilités différentes, mais j'utilise la manière la plus conventionnelle possible, mais commençons par expliquer Qu'est-ce que grep?

grep est simplement un filtre, c'est une commande qui montre les lignes qui correspondent au filtre que nous avons déclaré.

Par exemple, dans notre système, nous avons le fichier / usr / share / doc / bash / FAQ et le contenu de ce fichier est:

Afficher le contenu du fichier

Si vous souhaitez lister le contenu dans le terminal avec la commande cat (oui chat, comme chat hehe) ils peuvent le faire:

cat /usr/share/doc/bash/FAQ

Maintenant, supposons que nous voulions seulement lister la ligne de ce fichier qui parle de la version, pour cela nous utilisons grep:

cat /usr/share/doc/bash/FAQ | grep version

Mettre cela dans le terminal ne vous montrera que la ligne qui contient "version" dans ce fichier, il ne montrera plus aucune ligne qui ne contient pas ce mot.

Et si je veux tout afficher sauf la ligne de version?

Autrement dit, comme je vous l'ai expliqué, tout ce qui correspond au filtre serait affiché, maintenant je vais vous montrer comment tout faire apparaître à l'exception ce qui correspond au filtre:

cat /usr/share/doc/bash/FAQ | grep -v version

Avez-vous remarqué la différence? ... en ajoutant simplement -v ça fait déjà une différence 😀

Alors s'ils mettent grep il ne vous montrera que ce qui correspond au filtre, mais si vous mettez grep-v il vous montrera tout sauf le filtre.

Eh bien, ici, le message se termine, juste une autre astuce qui maintenant peut-être qu'ils peuvent le minimiser mais ... ils n'ont aucune idée de l'utilité de grep, c'est vraiment un sauvetage 😀

salutations


11 commentaires, laissez le vôtre

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont marqués avec *

*

*

  1. Responsable des données: Miguel Ángel Gatón
  2. Finalité des données: Contrôle du SPAM, gestion des commentaires.
  3. Légitimation: votre consentement
  4. Communication des données: Les données ne seront pas communiquées à des tiers sauf obligation légale.
  5. Stockage des données: base de données hébergée par Occentus Networks (EU)
  6. Droits: à tout moment, vous pouvez limiter, récupérer et supprimer vos informations.

  1.   DMoZ dit

    Sans aucun doute une commande très polyvalente, une fois que vous avez appris à la manier, elle vous facilite la vie =) ...

  2.   Scalbur dit

    Salut! .. .. vraiment une commande très utile .. dans mon cas je l'utilise beaucoup ..

    Un exemple simple serait, par exemple, dpkg -l | grep 'package' (dans le cas de distributions basées sur Debian), il est utilisé pour savoir si nous avons installé ce package.

    Super de donner ces outils à toute notre communauté 😉

    1.    KZKG ^ Gaara dit

      Merci beaucoup 😀
      En effet, grep est aussi puissant que notre imagination hahahaha, avec awk (et cut) ils réalisent vraiment des merveilles * - *

      Je vais mettre quelques autres conseils pour le travail du terminal sous peu 😉
      Salutations et merci pour votre commentaire.

      PS: Votre email est intéressant LOL !!

  3.   Hexborg dit

    Très bon!! Oui, grep est certainement l'un des sauveurs de vie pour quiconque aime utiliser le terminal. Juste quelques remarques: vous n'avez vraiment pas du tout besoin d'utiliser la commande cat. Vous pouvez mettre le nom de fichier comme paramètre grep comme ceci:

    version grep / usr / share / doc / bash / FAQ

    De plus, même si ce n'était pas le cas, il y aurait toujours la possibilité de rediriger l'entrée de commande en faisant quelque chose comme ceci:

    version grep </ usr / share / doc / bash / FAQ

    Ce dernier peut être fait avec n'importe quelle commande, il n'est donc jamais nécessaire d'utiliser cat pour envoyer un fichier à l'entrée d'une commande.

    Utiliser une redirection au lieu de cat fait que le shell lance un processus en moins, consommant ainsi moins de ressources. Ce n'est pas une différence appréciable, mais c'est considéré comme une bonne pratique.

    D'un autre côté, grep devient vraiment utile lors de l'utilisation d'expressions régulières ... Si je voulais aider en faisant un post sur les expressions régulières, que devrais-je faire? Est-il suffisant d'ajouter un nouveau message à partir du bureau wordpress?

    1.    KZKG ^ Gaara dit

      Oh intéressant, je me suis toujours habitué à l'utiliser avec le chat HAHAHAHA, merci pour le conseil 😀

      1.    Hugo dit

        Avec grep, vous pouvez également rendre les filtres un peu moins basiques, par exemple:

        grep -B3 -A3 -E -i --color=auto -n "(desde|hacia)?linux(\.)?$" ~/miarchivo.txt

        Cela montre essentiellement les lignes qui contiennent le terme que nous recherchons (qui peut être dans n'importe quelle combinaison de majuscules et de minuscules), ainsi que les trois lignes qui le précèdent et les trois qui le suivent, met en évidence les résultats dans une couleur différente, met les numéros de ligne sur les résultats, et permet l'activation d'expressions régulières étendues qui dans ce cas permettent de rechercher dans « monfichier.txt » toutes les lignes qui se terminent par desdelinux, vers Linux ou Linux simple (avec ou sans point final).

        Au fait, les expressions régulières offrent beaucoup de flexibilité et tout bon "geek" passionné de logiciel libre devrait apprendre à les utiliser, hehe.

  4.   dragnell dit

    Il est également possible d'utiliser zgrep pour les tablettes en .ta.gz c'est très utile quand on veut revoir d'anciens logs. À votre santé

  5.   jhon dit

    Salut. Merci pour le post. Il m'arrive qu'en utilisant grep, le mot que j'écris dans les lignes qui apparaissent ne change pas de couleur. (généralement c'est comme ça) [exemple: grep cat file.txt]
    les lignes et le chat apparaissent, mais le chat ne prend pas une certaine couleur pour le distinguer
    (dans le compus de mon université on le voit)
    Savez-vous comment je pourrais activer cette option?
    S'il vous plaît si vous pouvez me répondre. mon email est sps-003@hotmail.com

    1.    fdy nb dit

      l'ami doit écrire cat entre guillemets 'cat' ou aussi "cat" suivi du nom du fichier où il veut le trouver

  6.   enrique dit

    Bonjour ami, vous avez absolument raison, vous avez un grand sens de l'utilité. Désormais, je mets grep en premier dans ma liste de commandes favorites.
    salutations

  7.   scanjura dit

    Et comment serait-ce de montrer les employés filtrés par salaire?