Expression régulière avec grep

Résolu/Fermé
blux Messages postés 25986 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 22 avril 2024 - 12 avril 2006 à 13:38
blux Messages postés 25986 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 22 avril 2024 - 12 avril 2006 à 15:32
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.

4 réponses

blux Messages postés 25986 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 22 avril 2024 3 288
12 avril 2006 à 13:55
Bonjour,

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)
2
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 895
12 avril 2006 à 14:19
Salut,

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"
";-))
1
option -v de grep

merci de lire le man page un jour....
0
blux Messages postés 25986 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 22 avril 2024 3 288
12 avril 2006 à 15:32
C'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.
0