Dan White wrote: > On 20/02/10 16:53 -0800, Maria McKinley wrote: >> I have a mailbox that I send spam to, and I have been meaning to set >> up some filters, so that after a certain period of time, they get >> deleted. However, I got distracted, and now the inbox is very large. I >> was wondering if anyone has advice how to 1) get rid of all of the >> messages currently in the inbox that were sent before a certain date, >> and 2) how to set up a filter so that messages are moved to folders >> according to date, and then folders are deleted after a certain date. > > Please make sure you have a good backup of your mailstore before performing > any of the below. > > For 1), use ipurge. I have the following in my cyrus.conf on one of my > servers (in the EVENTS section): > > purgetrash cmd="/usr/sbin/ipurge -f -d 14 */Trash" at=0301 > > Which purges all messages older than 14 days, in all users' Trash folders > and runs every morning at 3:01am. See the man pages for ipurge and > cyrus.conf for more details. > > Sieve filters only act in incoming messages at time of delivery, and to my > knowledge can't be used to do 2). > > You could do what you're wanting in a roundabout way by renaming the > mailbox in a periodic basis, recreating the original box, and deleting the > rotated out box. > > For instance, you could run a script like this from crontab, once a month: > > #!/bin/sh > cat $HOME/last-rotated.txt | grep -q `date +%m%y` > if [ $? -eq 0 ]; then > exit > fi > MONTH=`date +%m` > echo "a01 delete user/jsmith/archive-$MONTH > a02 rename user/jsmith/archive user/jsmith/archive-$MONTH > a03 create user/jsmith/archive > a04 logout" | imtest -m plain -a cyrus -w <secret> localhost > date +%m%y > $HOME/last-rotated.txt > Thanks Dan, I successfully used ipurge to make the inbox more manageable. Still struggling with imtest, but getting there. cheers, maria ---- Cyrus Home Page: http://cyrusimap.web.cmu.edu/ Cyrus Wiki/FAQ: http://cyrusimap.web.cmu.edu/twiki List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html