Re: [HORS_SUJET] Pour continuer avec SED
Stephane Camberlin wrote:
> ça a l'air de marcher en perl:
>
> #!/usr/bin/perl
>
> open(LOG,"/path/mail.log");
> open(OUT,">/path/mail_out.log");
>
> foreach $i (<LOG>){
> $i =~ s/<(.*\@)\w*\.(domaine.com)>/<$1$2>/i;
> print OUT $i;
> }
>
> close(LOG);
> close(OUT);
Attention, avec \w ci-haut, on ne peut pas avoir de trait-d'union
tel que dans:
albert@test-er.domain.com
Aussi le le bloc `foreach $i' peut être remplacé plus simplement par :
while (<LOG>) {
s/\@[\w-]+\.domain.com/\@domain.com/;
print OUT;
}
En une seule ligne:
$ perl -pi.bak -e 's/\@[\w-]+\.domain.com/\@domain.com/' test.log
Ça crée un fichier backup avec l'extension .bak
--
Peter Galbraith, chercheur scientifique <GalbraithP@dfo-mpo.gc.ca>
Institut Maurice-Lamontagne, Ministère des Pêches et Océans du Canada
C.P. 1000, Mont-Joli Qc, G5H 3Z4 Canada 418-775-0852 FAX:418-775-0546
Reply to: