[Lugge] Re: Procmail e nuovi filtri

  • From: Zingus J.Rinkle <1999s039@xxxxxxxxxxxxxxxxxx>
  • To: <lugge@xxxxxxxxxxxxx>
  • Date: Sat, 10 Nov 2001 04:51:56 +0100 (CET)

A pagina 15 del "man procmail" c'e' uno script che sfrutta procmail per
processare mailbox in formato v7, ne allego una versione (ottenuta via
cut&paste) che uso per il reindirizzamento dalla mailbox di sistema da
quanto ho mandato all'aria sendmail (un paio di eoni fa, ma sono troppo
pigro per risettarlo e/o reinstallarlo...).
L'ho modificato per fargli controllare gli argomenti dalla commandline.
Lo "Usage:" e' il seguente:

    procmailbox <path-to-mailbox> 

ovviamente previo chmod 755 etc...

Nota: processa una sola mailbox per chiamata. 

PS: Il codice e' un po' kriptiko perche' pone dei lock...
non mi sono mai sprecato a controllare se ha delle magagne, (e/o a
metterci dentro un bel loop per processare piu' mbox - questo mi
costringerebbe a comprendere il codice che ho davanti - cosa che non
intendo fare :-) ) chi per caso lo migliora e/o becca magagne avverta...

Segue lo script procmailbox:
--------------------------------------------------------------------------
#!/bin/sh

if [ "$1" == "" ]; then
        ORGMAIL=/var/spool/mail/$LOGNAME
else
        ORGMAIL=$1
fi

if cd $HOME &&                                          # you can cd ~ 
        test -s $ORGMAIL &&                             # exists mailbox
        lockfile -r0 -l1024 .newmail.lock 2> /dev/null  # locks mailbox
then
        trap "rm -f .newmail.lock" 1 2 3 13 15          # ensures lock
removal 
        umask 077
        lockfile -l1024 -ml
        cat $ORGMAIL >>.newmail &&
                cat /dev/null >$ORGMAIL
        lockfile -mu
        formail -s procmail <.newmail &&
                rm -f .newmail
        rm -f .newmail.lock
fi
exit 0
--------------------------------------------------------------------------
buona fortuna e buona notte (sono le 4:45 CET; 3:45 UTC; 22:45 ECT)
Anzi, buona notte e buone botte.
f.to Zingus, il solito Zingus
--
__________   __________ +--------------------------------------------+
\____     \ /     ____/ | ZJR stands for Zingus J. Rinkle            |
 \___     ZJR     ___/  | (what the J. stands for, no one can tell)  |
  \_______/ \_______/   | mailto:zingusrinkle@xxxxxxxxx              |
http://www.as1.f2s.com  +--------------------------------------------+



<========----------
 Prima di scrivere in m-list per favore leggi il regolamento
 http://lugge.ziobudda.net/benvenuto.html



Other related posts: