Die globalen Filterregeln für <code>procmailcode> befinden sich in <code>/etc/procmailrccode>. Jeder reale Unix-User kann aber eigene Filterregeln in der <code>~/.procmailrccode> definieren.
Anfang:
Ein guter Anfang ist es immer erstmal alle wichtigen Environment-Variablen zur Verfügung zu stellen:
SHELL=/bin/sh PATH=/var/qmail/bin:/bin:/usr/bin:/usr/local/bin HOME=/var/qmail/mailnames/DOMAIN/USER MAILDIR=$HOME/Maildir/new LOGFILE=$HOME/procmail.log VERBOSE=off
Die meisten dienen nur dazu vorhanden zu sein. Denn es hängt immer davon ab, in welchem Kontext <code>procmailcode> aufgerufen wird.
Die Parameter <code>LOGFILEcode> und <code>VERBOSEcode> dienen hingegen wirklich einem realen Zweck:
Damit kann man gut nachverfolgen, ob die Einstellungen auch wirklich funktionieren.
Beispiele:
Sortierung nach Absender::0 w * ^From:.*user_tux /pfad/zum/maildir
Sortierung nach Betreff:
:0 w * ^Subject:.*betreff_xy /pfad/zum/maildir
Sortierung nach Empfänger:
:0 w * ^TO.*user_x /pfad/zum/maildir
Nachrichten verwerfen:
:0 * ^Subject:.*betreff_xyz /dev/null
Nachrichten ab einer bestimmten Größe verwerfen:
:0 * > 100000 #byte-Angabe /dev/null
Nachrichten weiterleiten:
:0 * ^From:.*user_xy !tux@home.tdl
Nachrichten durchsuchen:
:0 B * ^.*suchwort
Natürlich kann man mehrere Regeln auch verknüpfen:
:0 w * ^Subject:.*betreff_x|^To:.*user_tux|^From:.*domain.tld
Nachricht an ein eigenes Script überreichen und bei Fehler an Email weiterleiten:
:0 wc * ? ./mein_script.pl ! email @ empfänger.de
Weitere Informationen:
- Manpage von Procmail: <code>man procmailcode>
- Manpage der procmailrc: <code>man procmailrccode>
- Beispiele für Procmail: <code>man procmailexcode>