Newbie query: working on already delivered messages - batch mode?

David Ruggiero jdavid at farfalle.com
Fri Jun 10 03:45:55 CEST 2005


David:

Thanks. I recognize your name as the FAQ maintainer (see, people do read 
them :).

>Tis good the RH 7.1 build from source went
>without incident.  Not everyone building from source is so fortunate.

Indeed. I was surprised myself, but "config" + "make" + "make install" did 
me just fine, even with the older Berkeley db.

Mind you, I'm on the latest possible kernel and glibc, etc, that RH provided 
for 7.1, so I had a leg up there...

>As you've seen there is no good way add X-Bogosity "in-place".  In the
>normal, mail delivery environment, bogofilter works in a pipe
>environment, as in:    cat incoming | bogofilter -p | cat > outgoing
>or   bogofilter -p < incoming > outgoing
>A script using mv to rename is as good a way as any I know to process
>an already delivered message.

Okay, thanks for the confirmation that I wasn't missing anything obvious. I 
mostly was just trying to not invoke Bogofilter N times for N mails, but for 
my purposes (perhaps ~500 incoming/day at present) it's really just for 
style that I asked. Given my small mail load (unlike Mr. Acme's :), my 
machine can certainly keep up doing it the way I showed in the posting.

Still...hmmm...adding an option to make the input file and the output file 
the same to allow the "in-place" update would seem to me not to be terribly 
difficult, and would be a nifty feature to add. Maybe I'll dust off my C 
coding skills on this one and take a look at the source when time permits...

Thanks for the hard work and a great product. I was shocked, especially 
after running bogotune, how good it got at sorting my spam/ham corpus. Cool.

yours,
David


ps: thanks - nice explanation:

>you had asked about '-b' vs '-B'.  '-B' uses filenames from the command
>line, while '-b' uses filenames from stdin.  To score all the messages in
>'maildir' you can use either of:
>  cd maildir; bogofilter -v -B * or ls maildir/* | bogofilter -v -b
>More generally using find you could do:
>    find maildir -type f | bogofilter -v -b
>or  find maildir -name "*$PATTERN*" | bogofilter -v -b




More information about the Bogofilter mailing list