[gull] email
Félix Hauri
felix at f-hauri.ch
Thu Sep 22 09:34:18 CEST 2005
On Wed, Sep 21, 2005 at 06:03:57PM +0200, Simon Schmidig wrote:
> Bonjour,
>
> J'aimerais bien certaines emails d'un fichier log. J'ai essayé :
> # grep 'Not-Delivered' /var/log/mail.log | cut -d'<' -f2 | tr '\> \-\>'
> ' '
> mais je pense ce n'est pas la meilleurs solution.
Perl (Practical Extraction and Research Languade) est fait pour ça:
perl -pe </var/log/mail.log '
/^.*Not-deliv[^<]*<([^>]*)>/ && do { print $1};
undef $_'
Explication:
/ debut de regexp (expression régulière)
^ debut d'une ligne
.* n'importe quel caractère, n'importe combien de fois.
Not-deliv en toutes lettres (maj-min important)
[^<]* n'importe quel caractère sauf ``<'', n'importe combien de fois.
< en toutes lettres
( début de partie de regexp à confiner dans une variable ($1)
[^>]* n'importe quel caractère sauf ``>'', n'importe combien de fois.
) fin de partie de regexp à confiner dans une variable ($1)
> en toutes lettres, immédiatement après le dernier car de $1.
/ fin du regexp.
A modeler à ta guise!
(c.f. man perlre)
--
Félix Hauri - <felix at f-hauri.ch> - http://www.f-hauri.ch
More information about the gull
mailing list