« Crans/Gérer ses mails/ProcMail » : différence entre les versions
Autres actions
OldWikiCrans>WikiMo Aucun résumé des modifications |
m Migration |
||
| (11 versions intermédiaires par 8 utilisateurs non affichées) | |||
| Ligne 1 : | Ligne 1 : | ||
<!-- Page migrée depuis MoinMoin : VieCrans/GérerSesMails/ProcMail --> | <!-- Page migrée depuis MoinMoin : VieCrans/GérerSesMails/ProcMail --> | ||
{{ | {{Msg/Info| | ||
Cette page se veut un complément à la page [[Crans/Gérer ses mails]] | |||
}} | |||
Il est conseillé de rajouter ces lignes au début de votre fichier <code>.procmailrc</code> : | |||
<pre> | |||
MAILDIR=$HOME/Mail | |||
LOGFILE=$HOME/procmail.log | |||
</pre> | |||
Elles permettent de ne pas mettre le /Mail/dossier pour pointer vers le dossier voulu, et aussi d'avoir une trace de ce qui a été fait au cas où vous auriez fait une règle qui foire et vous fait disparaître des mails. | |||
= Des exemples = | = Des exemples = | ||
== Trier ses mails dans des répertoires == | |||
Si vous consultez vos mails en imap, il se peut que vous n'utilisiez pas toujours un client configuré avec vos règles pour trier les messages dans vos différents dossiers. | |||
Une solution est donc de faire ces règles directement sur votre compte zamok. Pour cela on rajoute dans .promailrc ce qui suit :<pre> | |||
# Nom | |||
:0: | |||
* ^Subject: .*motquiseretrouvedanslesujet | |||
.repertoireoùdéplacerlefichier/ | |||
</pre> | |||
Si vous avez créé vos répertoires avec un client mails, il faut savoir que les sous répertoires d'un répertoire ne sont pas dans leur arborescence mais à côté, par exemple si dans votre répertoire ''courrier entrant'' de Thunderbird vous avez fait un dossier ''Crans'', pour déplacer un mail vers ce dossier il faudra mettre : | |||
<pre> | |||
.INBOX.Crans/ | |||
</pre> | |||
Et non | |||
<pre> | |||
.INBOX/Crans/ | |||
</pre> | |||
Il est important de noter que la chaine qui suit le ^Subject: . doit être une expression régulière (RegExp) : | |||
En particulier certains caractères spéciaux ont un sens particulier en RegExp, pour désigner le caractère il faut alors le faire précéder d'un antislash ''\'', par exemple si vous cherchez à identifier les mails provenant de la mailing list [Crans], il ne faut pas marquer : | |||
<pre> | |||
^Subject: .*[Crans] | |||
</pre> | |||
mais : | |||
<pre> | |||
^Subject: .*\[Crans\] | |||
</pre> | |||
remarque : La première écriture veut dire : si le sujet contient n'importe le quel des caractères entre crochet | |||
== Éliminer les doublons == | == Éliminer les doublons == | ||
Dans certains cas, on se retrouve parfois à recevoir un mail en plusieurs exemplaires identiques. | Dans certains cas, on se retrouve parfois à recevoir un mail en plusieurs exemplaires identiques. | ||
Si l'on veut éviter cela, il est possible de demander à procmail de mémoriser les derniers mails qu'il reçoit et de les comparer aux nouveaux qui arrivent.<pre> | Si l'on veut éviter cela, il est possible de demander à procmail de mémoriser les derniers mails qu'il reçoit et de les comparer aux nouveaux qui arrivent.<pre> | ||
| formail -D 16384 msgid.cache | :0 Wh: msgid.lock | ||
| formail -D 16384 msgid.cache | |||
</pre> | |||
où : | où : | ||
* <code><nowiki>msgid.lock</nowiki></code> correspond à un fichier de lock pour l'opération de filtrage | |||
* <code><nowiki>msgid.cache</nowiki></code> correspond au fichier dans lequel sont mémorisés une partie des messages précédents | |||
** à celui-ci est associée une valeur <code><nowiki>16384</nowiki></code> correspondant à la taille maximale du fichier en ko | |||
Si un fichier a déjà été vu par procmail, le nouveau est immédiatement supprimé. | Si un fichier a déjà été vu par procmail, le nouveau est immédiatement supprimé. | ||
== Modifier la règle de réponse (Reply-To) == | == Modifier la règle de réponse (Reply-To) == | ||
Dans certains cas, il peut s'avérer utile de modifier des champs d'un mail que l'on reçoit. | Dans certains cas, il peut s'avérer utile de modifier des champs d'un mail que l'on reçoit. | ||
On se place ici dans le cas des mailing-list au crans qui sont configurés pour répondre à l'expéditeur par défaut. Afin d'éviter à ses lecteurs qu'ils ne reçoivent plusieurs fois le même mail. Cela arrive quand l'expéditeur est aussi abonné à la mailing-liste et que l'on fait répondre à tous. | On se place ici dans le cas des mailing-list au crans qui sont configurés pour répondre à l'expéditeur par défaut. Afin d'éviter à ses lecteurs qu'ils ne reçoivent plusieurs fois le même mail. Cela arrive quand l'expéditeur est aussi abonné à la mailing-liste et que l'on fait répondre à tous. | ||
Dans ce cas, on pourra changer cela en écrivant dans le mail le champ Reply-To correspondant à l'adresse de réponse que l'on veut.<br>Pour ce faire on peut ajouter au fichier <code><nowiki>.procmailrc</nowiki></code> les lignes suivantes :<pre> | |||
Dans ce cas, on pourra changer cela en écrivant dans le mail le champ Reply-To correspondant à l'adresse de réponse que l'on veut. | :0 f | ||
Pour ce faire on peut ajouter au fichier | |||
* ^List-Id.*nounou.lists.crans.org | * ^List-Id.*nounou.lists.crans.org | ||
| formail -i "Reply-To: nounou@crans.org" | | formail -i "Reply-To: nounou@crans.org" | ||
</pre> | |||
Cet exemple montre comment répondre aux mails en provenance de la mailing-liste sur la mailing-liste. | Cet exemple montre comment répondre aux mails en provenance de la mailing-liste sur la mailing-liste. | ||
On peut imaginer la règle suivante :<pre> | |||
:0 f | |||
* ^List-Id.*disconnect.lists.crans.org | |||
| formail -i "Reply-To: nounou@crans.org" | |||
</pre> | |||
Pour que les réponses aux mails envoyés sur la mailing-liste disconnect soit redirigées simplement vers la file de discussion la plus appropriée. | Pour que les réponses aux mails envoyés sur la mailing-liste disconnect soit redirigées simplement vers la file de discussion la plus appropriée. | ||
/!\ Cet exemple n'est qu'un exemple (en attendant mieux) et il existe tout un tas de raisons de ne pas le faire : http://www.google.com/search?q=reply-to+considered+harmful | |||
= Un .procmail tout fait = | |||
Parce que des cranseux ont bossé dessus : [[Archive:VieCrans/FichiersConfiguration#procmail|ici]]. | |||
{{ListeBadges| | |||
{{Badge/Page_Publique}} | |||
}} | |||
Dernière version du 12 septembre 2026 à 17:05
Cette page se veut un complément à la page Crans/Gérer ses mails
Il est conseillé de rajouter ces lignes au début de votre fichier .procmailrc :
MAILDIR=$HOME/Mail LOGFILE=$HOME/procmail.log
Elles permettent de ne pas mettre le /Mail/dossier pour pointer vers le dossier voulu, et aussi d'avoir une trace de ce qui a été fait au cas où vous auriez fait une règle qui foire et vous fait disparaître des mails.
Des exemples
Trier ses mails dans des répertoires
Si vous consultez vos mails en imap, il se peut que vous n'utilisiez pas toujours un client configuré avec vos règles pour trier les messages dans vos différents dossiers.
Une solution est donc de faire ces règles directement sur votre compte zamok. Pour cela on rajoute dans .promailrc ce qui suit :
# Nom :0: * ^Subject: .*motquiseretrouvedanslesujet .repertoireoùdéplacerlefichier/
Si vous avez créé vos répertoires avec un client mails, il faut savoir que les sous répertoires d'un répertoire ne sont pas dans leur arborescence mais à côté, par exemple si dans votre répertoire courrier entrant de Thunderbird vous avez fait un dossier Crans, pour déplacer un mail vers ce dossier il faudra mettre :
.INBOX.Crans/
Et non
.INBOX/Crans/
Il est important de noter que la chaine qui suit le ^Subject: . doit être une expression régulière (RegExp) : En particulier certains caractères spéciaux ont un sens particulier en RegExp, pour désigner le caractère il faut alors le faire précéder d'un antislash \, par exemple si vous cherchez à identifier les mails provenant de la mailing list [Crans], il ne faut pas marquer :
^Subject: .*[Crans]
mais :
^Subject: .*\[Crans\]
remarque : La première écriture veut dire : si le sujet contient n'importe le quel des caractères entre crochet
Éliminer les doublons
Dans certains cas, on se retrouve parfois à recevoir un mail en plusieurs exemplaires identiques.
Si l'on veut éviter cela, il est possible de demander à procmail de mémoriser les derniers mails qu'il reçoit et de les comparer aux nouveaux qui arrivent.
:0 Wh: msgid.lock | formail -D 16384 msgid.cache
où :
msgid.lockcorrespond à un fichier de lock pour l'opération de filtragemsgid.cachecorrespond au fichier dans lequel sont mémorisés une partie des messages précédents- à celui-ci est associée une valeur
16384correspondant à la taille maximale du fichier en ko
- à celui-ci est associée une valeur
Si un fichier a déjà été vu par procmail, le nouveau est immédiatement supprimé.
Modifier la règle de réponse (Reply-To)
Dans certains cas, il peut s'avérer utile de modifier des champs d'un mail que l'on reçoit. On se place ici dans le cas des mailing-list au crans qui sont configurés pour répondre à l'expéditeur par défaut. Afin d'éviter à ses lecteurs qu'ils ne reçoivent plusieurs fois le même mail. Cela arrive quand l'expéditeur est aussi abonné à la mailing-liste et que l'on fait répondre à tous.
Dans ce cas, on pourra changer cela en écrivant dans le mail le champ Reply-To correspondant à l'adresse de réponse que l'on veut.
Pour ce faire on peut ajouter au fichier .procmailrc les lignes suivantes :
:0 f * ^List-Id.*nounou.lists.crans.org | formail -i "Reply-To: nounou@crans.org"
Cet exemple montre comment répondre aux mails en provenance de la mailing-liste sur la mailing-liste.
On peut imaginer la règle suivante :
:0 f * ^List-Id.*disconnect.lists.crans.org | formail -i "Reply-To: nounou@crans.org"
Pour que les réponses aux mails envoyés sur la mailing-liste disconnect soit redirigées simplement vers la file de discussion la plus appropriée. /!\ Cet exemple n'est qu'un exemple (en attendant mieux) et il existe tout un tas de raisons de ne pas le faire : http://www.google.com/search?q=reply-to+considered+harmful
Un .procmail tout fait
Parce que des cranseux ont bossé dessus : ici.