Hier finden sich Beispiele für Procmail-Filterregeln

Beispiel einer .procmailrc

SHELL=/bin/sh
PATH=$HOME/bin:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin
MAILDIR=$HOME/Maildir/

LOGFILE=$MAILDIR/procmail.log
LOGABSTRACT="all"
VERBOSE="on"

:0fw
| spamassassin -P

:0:
* ^X-Spam-Status: Yes
.Spam/

#alternativ die Spam-Mail an einen andere email-Adresse umleiten,
# z.B. wenn man nicht IMAP, sondern nur 1 POP3-Postfach benutzt:
#:0
#* ^X-Spam-Status: Yes
#! spamuser@mylocalserver

:0:
* ^Subject: Cron
.System/

:0:
* ^From: wiki@
.Wiki/

:0:
* ^Subject:.*\[hylafax-users\]
.Hylafax/

:0:
* ^Return-Path:.*syslinux
.Syslinux/

:0:
*
$HOME/Maildir/

Dieses Beispiel arbeitet mit Maildirs und Verzeichnisnamen, wie sie auch Courier/courier-imap benutzen würde.

Das Locking (hinterer Doppelpunkt) ist bei Maildirs nicht notwendig, wurde aber im Beispiel belassen, damit es leichter auf mbox-Dateien übertragbar ist.

Hinweis: Wenn (auf das Beispiel bezogen) im Maildir des Users noch kein Verzeichnis 'Spam' (oder 'Wiki' oder 'Hylafax' ...) existiert, bricht procmail die Verarbeitung wegen Problemen beim Erstellen vom Lockfile in dem (nicht vorhandenen) Verzeichnis ab. Besser also bei Maildirs den letzten Doppelpunkt entfernen, denn dann wird kein Lockingmechanismus verwendet und das nicht existente Verzeichnis bei Bedarf erstellt.

Man sieht, wie Mails nach Subject, Return-Path (Mailingliste) oder Absender (wiki) auseinandersortiert werden. Außerdem kann man mit Procmail auch Inhalte aus Mail herausfiltern (z.B. die Werbung von Freemailern).

Man sieht außerdem, dass die Syntax der procmailrc alles andere als verständlich ist, Courier/maildrop ist da deutlich besser. Bei maildrop verschwinden auch keine Mails im Nirvana, wenn die Konfigurationsdatei fehlerhaft ist, was bei procmail schon mal passieren kann.

## löscht den debian-user-german-Footer
:0 fbw
* ^X-Mailing-List:.*debian-user-german
| perl -pe 'undef $/; s/^\n\n-- \nZum AUSTRAGEN schicken Sie eine Mail an debian-user-german-request\@lists\.debian\.org\nmit dem Subject "unsubscribe"\. Probleme\? Mail an listmaster\@lists\.debian\.org \(engl\)//gm'

procmail/Beispiele (zuletzt geändert am 2007-12-23 22:46:36 durch localhost)