@ killi : da hast du verdammt nochmal recht!
mit nem bissel simple shellcoding sollte es so gehen
Code:
DOMAIN="richtig.org"
emailaddys="test1@richtig.org test2@richtig.org test3@falsch.org"
for oneaddy in $emailaddys
do
tmpvar=`echo "$oneaddy" | grep "$DOMAIN"`
[ "$tmpvar" != "" ] && usefulladdys=`echo "$usefulladdys $oneaddy"`
done
ich höre jetzt schon die kritiker
aber habe mich mit dem eigentlichen problem was ich ja noch umsetzten muss bissel
beschäftigt und doch zu formail gegriffen, weil .....
habe mal ein bissel googled und etwas gefunden als vorlage was genau auf mein
scenario passt, weil ich mit dem prinzip arbeiten muss sammel pop3 konto extern
und ms exchange server intern
http://home.arcor-online.de/v.steltenkamp/linux/pollmail.htm <- der hat eine
nette vorlage dort gemacht, bloss etwas buggy bzw nicht wirklich tauglich für den
finalen endbetrieb.
als vorlage diente dort für die .procmailrc
Code:
TO=`formail -x "To:" | sed -e "s/^.*<//" | sed -e "s/>.*$//"`
:0
*$^To:.*${TO}
!${TO}
das problem dabei war das der sendmail auch an die email adressen versuchte zu
senden die nicht intern waren und alles aus "To" ausser acht gelassen wurde, siehe z.b. "Cc".
habe das mal ergänzt zu
Code:
DOMAIN="richtig.org"
TO=`/usr/local/bin/formail -x "To:" | sed -e "s/^.*<//" | sed -e "s/>.*$//" | grep "$DOMAIN"`
CC=`/usr/local/bin/formail -x "Cc:" | sed -e "s/^.*<//" | sed -e "s/>.*$//" | grep "$DOMAIN"`
:0
*$^To:.*${TO}
*$^Cc:.*${CC}
{
:0 c
!${TO}
:0
!${CC}
}
:0
*$^To:.*${TO}
!${TO}
habe damit edliche test gemacht und es scheint recht gut zu laufen, bloss habe ich
das "Bcc" problem noch, der externe email server scheint das Bcc rauszuschneiden
was ja auch der sinn der sache is.