web-dev-qa-db-fra.com

Afficher les correspondances exactes uniquement avec GREP

Comment puis-je afficher uniquement les travaux terminés correctement?

Quand j'essaie la commande ci-dessous, il montre OK et NOTOK puisque les deux ont "OK"

ctmpsm -listall application | grep OK
8
aftermath

Vous avez besoin d'une expression plus spécifique. Essayez grep " OK$" ou grep "[0-9]* OK". Vous voulez choisir un modèle qui correspond à ce que vous voulez, mais pas à ce que vous ne voulez pas. Ce modèle dépendra du contenu de votre fichier.

Vous pouvez également faire: grep -w "OK" qui ne correspond à un mot entier "OK", tel que "1 OK" mais ne correspondra pas à "1OK" ou "OKFINE".

$ cat test.txt | grep -w "OK"
1 OK
2 OK
4 OK
23
lurker

Cela peut fonctionner pour vous

grep -E '(^|\s)OK($|\s)'
7
iruvar

Essaye ça:

Alex Misuno@hp4530s ~
$ cat test.txt
1 OK
2 OK
3 NOTOK
4 OK
5 NOTOK
Alex Misuno@hp4530s ~
$ cat test.txt | grep ".* OK$"
1 OK
2 OK
4 OK
1
plsgogame

essayez ceci: grep -P '^ (Tomcat !?)' tst1.txt

Il recherchera un mot spécifique dans un fichier txt. Ici, nous essayons de rechercher Word 'Tomcat'

0

Cela a fonctionné pour moi :

grep  "\bsearch_Word\b"  text_file > output.txt  ## \b indicates boundaries. This is much faster.

ou,

grep -w "search_Word" text_file > output.txt
0
Surya