regexp

トップ ページ

このメッセージに返信
著者: Benoit T
日付:  
To: guilde
題目: regexp

bonjour,


petit problème de construction d'expression regulière :

j'un fichier qui contient des logs de connexions, je veux supprimer les
lignes concernant les connexions locales.

le fichier ressemble à ça :

Nov 16 09:18:21 port 49006 UDP datagram from 212.21.255.76
Nov 16 09:19:04 last message repeated 4 time(s)
Nov 16 09:19:04 netbios-ns UDP datagram from 192.168.2.23
Nov 16 09:19:12 last message repeated 19 time(s)
Nov 16 09:37:02 netbios-ns UDP datagram from 195.251.9.141
Nov 16 09:37:16 last message repeated 1 time(s)

il s'agit de supprimer toutes les lignes contenant "192.168.2.", et
éventuellement celles qui les suivent immédiatement et qui
contiennent "last message". j'ai beaucoup cherché avec grep, sans
résultat.

notamment :
egrep -z "192\.168\.2\.2[23](\n... .. ........ last message repeated [:digit:]+ time\(s\))?"


quelqu'un saurait-il le faire, même en sed ou en perl ?


merci d'avance,



ben