Re: procmail: $MATCH erst später substituieren
Daniel Leidert wrote:
> Ich versuche mal das Problem zu erklären. Ich filtere die Mails mit
> procmail. Dabei habe ich momentan für jede einzelne abonnierte Liste
> eine eigene Regel. Da die procmailrc nun aber recht beachtlche Länge
> erreicht hat und procmail leistungsfähiger ist, wollte ich die
> Listen-Mail automatisch sortieren:
[...]
> Nun dachte ich mir, ich könnte die Regel einfach so umformulieren, dass
> statt des Verzeichnisses, in dem die Mails landen sollen, nun die
> $MATCH-Variable steht:
>
Ungetestet:
> MAILLIST_DEBIAN = "$DELIVERMAIL -e -a $LOGNAME -m user.$LOGNAME.ml.debian.$MATCH"
DELIVER = "$DELIVERMAIL -e -a $LOGNAME"
MAILBOX = "-m user.$LOGNAME.ml.debian"
> :0
> * ^List-Id: .*debian-.+\.lists\.debian\.org
> * ^X-Mailing-List: <debian-\/[^@]+
> | /bin/sed 1d | $MAILLIST_DEBIAN
| /bin/sed 1d | $DELIVER $MAILBOX.$MATCH
wobei ein
:0 fw: stripHeader.lock
| $FORMAIL -b -f -R "From " "X-From_: "
an zentraler Stelle das '/bin/sed 1d' noch ersetzen könnte
> :0 e
> { EXITCODE=75 HOST }
das funktioniert hier zuverlässig(er)
:0 e
{
EXITCODE = 75
HOST =
}
[...]
> lautet und die Mails landen im Nirvana (zumindest finde ich sie nicht
> (mehr)).
Siehe Fehlerbehandlung weiter oben.
Wahrscheinlich landen sie in $DEFAULT, welches auf $ORGMAIL zeigt,
welches wiederum auf /var/mail/$LOGNAME zeigt (weshalb ich beides bei
mir auf "" setze). Hast du in /var/mail/$LOGNAME schon geschaut ob da
was eingeliefert wurde?
HTH und Gruß, Michel
--
Reply to: