[PROCMAIL] Help !

Le
clara
Bonjour,

voici mon filtre :

:0:Procmail.lock
* ^Subject:./.*> salut comment ca va.
$LOG/file_$MATCH

voici comment le mail est exploité :

procmail: Matched "<toto> salut comment ca va."
procmail: Match on "^Subject:./.*> salut comment ca va."
procmail: Locking "Procmail.lock"
procmail: Skipped "salut comment ca va."
procmail: Assigning "LASTFOLDER=/home/moi/LOG/file_<toto>"
procmail: Opening "/home/moi/LOG/file_<toto>"
procmail: Acquiring kernel-lock
procmail: [17090] Thu Feb 7 12:26:01 2008
procmail: Unlocking "Procmail.lock"
From morg@ne.fr Thu Feb 7 12:25:59 2008
Subject: <toto> salut comment ca va.
Folder: /home/moi/LOG/file_<toto>

Mais je ne veux récuperer que toto (sans les <>). Un file_toto quoi.

comment faire ?

Merci à vous.
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses Page 1 / 2
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Jacques L'helgoualc'h
Le #799772
Le 07-02-2008, clara a écrit :
Bonjour,


bonjour,

voici mon filtre :

:0:Procmail.lock
* ^Subject:./.*> salut comment ca va.
$LOG/file_$MATCH

voici comment le mail est exploité :

procmail: Matched "<toto> salut comment ca va."
procmail: Match on "^Subject:./.*> salut comment ca va."
procmail: Locking "Procmail.lock"
procmail: Skipped "salut comment ca va."


Je ne comprends pas comment « salut ... » est éliminé dans la recette
ci-dessus ?

procmail: Assigning "LASTFOLDER=/home/moi/LOG/file_<toto>"
procmail: Opening "/home/moi/LOG/file_<toto>"
procmail: Acquiring kernel-lock
procmail: [17090] Thu Feb 7 12:26:01 2008
procmail: Unlocking "Procmail.lock"
From Thu Feb 7 12:25:59 2008
Subject: <toto> salut comment ca va.
Folder: /home/moi/LOG/file_<toto>

Mais je ne veux récuperer que toto (sans les <>). Un file_toto quoi.

comment faire ?


# à tester,
:0
* ^Subject:.* {
:0:Procmail.lock
* ^Subject:[^<]*</[^>]*
$LOG/file_$MATCH
}

P.S. Un c cédille dans « ça va » peut causer des ennuis.
--
Jacques L'helgoualc'h

clara
Le #799771
Jacques L'helgoualc'h wrote:
procmail: Matched "<toto> salut comment ca va."
procmail: Match on "^Subject:./.*> salut comment ca va."
procmail: Locking "Procmail.lock"
procmail: Skipped "salut comment ca va."


Je ne comprends pas comment « salut ... » est éliminé dans la recette
ci-dessus ?


Je vous avoue que moi non plus... :(

# à tester,
:0
* ^Subject:.* {
:0:Procmail.lock
* ^Subject:[^<]*</[^>]*
$LOG/file_$MATCH
}


Génial ! Ca fonctionne à merveille :

procmail: Match on "^Subject:.* procmail: Assigning "MATCH="
procmail: Matched "toto"
procmail: Match on "^Subject:[^<]*</[^>]*"
procmail: Locking "Procmail.lock"
procmail: Assigning "LASTFOLDER=/home/moi/LOG/file_toto"
procmail: Opening "/home/moi/LOG/file_toto"
procmail: Acquiring kernel-lock
procmail: [19718] Thu Feb 7 17:43:49 2008
procmail: Unlocking "Procmail.lock"
From Thu Feb 7 17:43:47 2008
Subject: <toto> salut comment ca va.
Folder: /home/moi/LOG/file_toto

P.S. Un c cédille dans « ça va » peut causer des ennuis.


Pas grave, c'était juste pour l'exemple.

Merci encore.


clara
Le #799770
Jacques L'helgoualc'h wrote:
P.S. Un c cédille dans « ça va » peut causer des ennuis.


Salut Jacques !

Dis, sais-tu si le procmail est capable de décoder un mail arrivé en
base64 ?

Content-Transfer-Encoding: base64
[...]
c2FsdXQgbGVzIGxvdWxvdXM
Merci.

Jacques L'helgoualc'h
Le #799769
Le 08-02-2008, clara a écrit :
Jacques L'helgoualc'h wrote:
P.S. Un c cédille dans « ça va » peut causer des ennuis.


Salut Jacques !


bonjour,

Dis, sais-tu si le procmail est capable de décoder un mail arrivé en
base64 ?


A priori, non, pas tout seul... seulement détecter sa présence (mais
regarder aussi dans le corps du message est coûteux).

Content-Transfer-Encoding: base64
[...]
c2FsdXQgbGVzIGxvdWxvdXM
man -k decode base64


donne la piste uudecode, qu'on doit pouvoir utiliser si besoin via un
filtre dans le procmailrc ; sinon, il y a aussi la piste Perl, qui ne
doit pas être très efficace via Procmail, cf. spamassassin.

Merci.


de rien,
--
Jacques L'helgoualc'h


Vincent Lefevre
Le #799768
Dans l'article Jacques L'helgoualc'h
Le 08-02-2008, clara a écrit :
Content-Transfer-Encoding: base64
[...]
c2FsdXQgbGVzIGxvdWxvdXM
man -k decode base64


donne la piste uudecode, qu'on doit pouvoir utiliser si besoin via un
filtre dans le procmailrc ; sinon, il y a aussi la piste Perl, qui ne
doit pas être très efficace


Une fois que perl est lancé, c'est relativement efficace. Et c'est
aussi plus sûr que des trucs en sh.

via Procmail,


Oui, c'est un problème. Ceci dit, dans la pratique, c'est quasiment
immédiat.

cf. spamassassin.


C'est parce que spamassassin fait des trucs lourds (genre grepper le
corps du message). D'autre part, s'il fait des connexions réseau pour
vérifier si telle adresse est dans telle blacklist, ça ralentit
évidemment.

--
Vincent Lefèvre 100% accessible validated (X)HTML - Blog: Work: CR INRIA - computer arithmetic / Arenaire project (LIP, ENS-Lyon)


Jacques L'helgoualc'h
Le #799766
Le 08-02-2008, Vincent Lefevre a écrit :
Dans l'article Jacques L'helgoualc'h écrit:
[...] il y a aussi la piste Perl, qui ne doit pas être très efficace


Une fois que perl est lancé, c'est relativement efficace. Et c'est
aussi plus sûr que des trucs en sh.


Oui, mais tant qu'à faire, autant oublier Procmail...

via Procmail,


Oui, c'est un problème. Ceci dit, dans la pratique, c'est quasiment
immédiat.


Une fois Perl en mémoire.

cf. spamassassin.


C'est parce que spamassassin fait des trucs lourds (genre grepper le
corps du message).


et en y cherchant aussi des ^Content-T(ype|ransfer-Encoding):.*base64,
on le greppera aussi.

D'autre part, s'il fait des connexions réseau pour vérifier si telle
adresse est dans telle blacklist, ça ralentit évidemment.


Même sans, sur une bécane un peu légère --- sans remonter au PII-266 :/
--
Jacques L'helgoualc'h


clara
Le #799084
Jacques L'helgoualc'h wrote:
et en y cherchant aussi des ^Content-T(ype|ransfer-Encoding):.*base64,
on le greppera aussi.


En fait, je souhaite extraire la partie encodée du mail en l'occurence
le body.

La commande uuencode nécessite un fichier formaté.

Donc, comment puis-je extraire uniquement le corps du mail ? Merci.

Olivier Miakinen
Le #799083

[...] comment puis-je extraire uniquement le corps du mail ? Merci.


La discussion est déjà bien avancée, et tu as eu pas mal de réponses,
néanmoins tu en aurais probablement eu davantage en posant ta question
au bon endroit : fr.comp.mail.serveurs (jdçjdr).

Thierry B.
Le #801156
--{ clara a plopé ceci: }--

et en y cherchant aussi des ^Content-T(ype|ransfer-Encoding):.*base64,
on le greppera aussi.


En fait, je souhaite extraire la partie encodée du mail en l'occurence
le body.
La commande uuencode nécessite un fichier formaté.
Donc, comment puis-je extraire uniquement le corps du mail ? Merci.


Une piste: Perl et ses modules MIME:: ?

--
IT'S ALL YOUR FAULT!!!


Vincent Lefevre
Le #799082
Dans l'article Olivier Miakinen
La discussion est déjà bien avancée, et tu as eu pas mal de réponses,
néanmoins tu en aurais probablement eu davantage en posant ta question
au bon endroit : fr.comp.mail.serveurs (jdçjdr).


Pourquoi f.c.m.*serveurs* alors qu'on parle de procmail? La charte
dit bien:

Les discussions sur les agents utilisateur, fonctions de filtrage
côté utilisateur, prestataires de services de mail, y sont
hors-sujet et restent dans le groupe parent.

C'est du filtrage côté utilisateur, donc ça va a priori dans
fr.comp.mail.

Maintenant, procmail fait essentiellement appel à des programmes
externes (outils Unix) pour tout ce qui est complexe...

--
Vincent Lefèvre 100% accessible validated (X)HTML - Blog: Work: CR INRIA - computer arithmetic / Arenaire project (LIP, ENS-Lyon)

Publicité
Poster une réponse
Anonyme