GNU/Linux >> Tutoriels Linux >  >> Linux

Comment grep pour un mot spécifique et saisir du texte

Vous pouvez utiliser -B1 pour imprimer également la ligne précédente, puis saisir uniquement la première ligne :

$ grep -B1 'Minion' ip.txt
T5F6Z12:
   Minion did not return. [Not connected]
$ grep -B1 'Minion' ip.txt | head -n1
T5F6Z12:

Ou faites-le avec awk :

$ awk '/Minion/{print p} {p=$0}' ip.txt
T5F6Z12:
$ awk '/Minion/{sub(/:$/, "", p); print p} {p=$0}' ip.txt
T5F6Z12

Ici p conserve la sauvegarde de la dernière ligne. Lorsque la ligne d'entrée contient Minion , puis il est imprimé. Notez que cela fonctionnera pour plusieurs correspondances contrairement au grep solution ci-dessus qui ne donne que la première correspondance.


Si vous êtes lié à grep alors vous pourriez maintenir des correspondances multi-lignes ...

fichier :

T5F6Z12:
   Minion did not return. [Not connected]
T5F6Z11:
   Pinion did return. [connected]
T5F6Z10:
   Minion did not return. [Not connected]

Utiliser

grep -B 1 "Minion" file | grep ":$"
T5F6Z12:
T5F6Z10:

Si vous pouvez utiliser sed alors il y a une réponse ici dans U&L que j'ai plagié ci-dessous

sed -n '/Minion/{x;p;d;}; x' file
T5F6Z12:
T5F6Z10:

Linux
  1. Linux - Comment Grep Pour Un Mot Spécifique Et Saisir Du Texte?

  2. Comment rechercher un texte spécifique à l'aide de GREP sous Linux

  3. Comment utiliser la commande Wireshark tshark pour les ports personnalisés et les fichiers texte

  4. Comment puis-je trouver tous les fichiers contenant du texte spécifique sous Linux ?

  5. Comment rechercher un mot dans tout le contenu d'un répertoire sous Linux

Comment trouver une chaîne ou un mot spécifique dans les fichiers et les répertoires

Comment compter les occurrences de mots dans un fichier texte

Comment Grep pour plusieurs chaînes et modèles

Comment sauvegarder et restaurer une carte SD pour Raspberry Pi

Comment rechercher et supprimer des fichiers contenant un texte spécifique dans leurs noms sous Linux

Comment rechercher et remplacer du texte, un mot ou une chaîne dans un fichier