Expression régulière avec grep
Résolu/Fermé
Bonjour,
je cherche désespérément l'expression régulière qui me permettrait de trouver des mots, mais en ôtant certains contextes.
Je m'explique :
grep -c -E "failed|unexpectedly exited"
me sort le nombre de fois où j'ai 'failed' ou 'unexpectedly exited'.
Mais je souhaiterais qu'il ne me compte pas le cas où j'ai "reverse DNS lookup failed"
Bien entendu, le mot "failed" est n'importe où sur la ligne...
Est-ce possible ? Si oui, comment faire ?
Merci d'avance.
--
A+ Blux
je cherche désespérément l'expression régulière qui me permettrait de trouver des mots, mais en ôtant certains contextes.
Je m'explique :
grep -c -E "failed|unexpectedly exited"
me sort le nombre de fois où j'ai 'failed' ou 'unexpectedly exited'.
Mais je souhaiterais qu'il ne me compte pas le cas où j'ai "reverse DNS lookup failed"
Bien entendu, le mot "failed" est n'importe où sur la ligne...
Est-ce possible ? Si oui, comment faire ?
Merci d'avance.
--
A+ Blux
"Les cons, ça ose tout. C'est même à ça qu'on les reconnait"
4 réponses
-
ModérateurBonjour,
merci de lire ma question un jour... ;-)
Je veux qu'il me compte le nombre de fois où il trouve failed et unexpectedly exited, mais qu'il ne me compte pas "reverse DNS lookup failed" comme trouvant "failed"...
a ou b mais pas c (avec a compris dans c)
-
ModérateurSalut,
J'ai pas de quoi testé sous la main, mais un truc du genre devrait passé :grep -E "failed|unexpectedly exited" | grep -c -E -v "reverse DNS"
";-)) -
option -v de grep
merci de lire le man page un jour.... -
ModérateurC'est bon, pas de souci...
J'étais tellement omnubilé par les ER, que je n'ai pas pensé aux pipes...
Pourtant, ma ligne initiale en contient déjà 2 !
Merci bien.