[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: How to remove messages from mbox based on relative date?



On Fri, Apr 27, 2001 at 02:59:58PM +0100, David Wright wrote:
> Quoting Mike Fedyk (mfedyk@matchmail.com):
> > On Wed, Apr 25, 2001 at 11:32:05AM +0100, David Wright wrote:
> 
> > > If you process email using the Date: header, then you're basing
> > > your processing on the date it was allegedly sent.
> > > 
> > > If you process email using the output of the date command, then
> > > you're basing your processing on the current date.
> > 
> > Not if you tell date to output another date.  You can use gnu date's
> > relative time functions to find out if you reverse the days by 30 to see if
> > the months match, and write some wraping function to determine if the day of
> > the month is within your criteria.  
> 
> Date's relative time functions are relative to the current date,
> i.e. you're basing your processing on the current date (which changes
> with time, paragraph 2) rather than the Date: header (which is fixed,
> paragraph 1).
> 
> Of course, you may be saying something that's way beyond my
> comprehension. I can't even parse the phrase
> "to find out if you reverse the days by 30 to see if the months match".
>

You do a date "30 days ago" and test to see if the months match...

Basically you use the "date" command's relitave date functions and just
write parsers around that...  This is for shell scripts.

> > I was really hoping someone would post about the problems I've been having
> > with the uidl and pop3 servers from my previous message.  I guess I'll just
> > have to add more accounts... :(
> 
> I've no idea what this is about.

When a POP3 client wants to keep messages on the server, and only get new
messages, it uses the "UIDL" command.

1 bc0f0d8d9bf80100
2 d0ef750b1db63100
3 4fe591a8260c0000
4 7429ad4b29050000
5 a85d4a46c6050000
6 449d2e2a78060000
7 b0e43b2b040e0000
8 61fff0e6e75b0800
9 2f0c495d0c100000
10 7eb871490f204000

I was having mutt remove the messages older than 7 days, because the client
wasn't because of a really sorry client, and the server will only remove
messages older that 7days on a "retr" pop3 command.

After mutt processing:

1 7429ad4b29050000
2 a85d4a46c6050000
3 449d2e2a78060000
4 b0e43b2b040e0000
5 61fff0e6e75b0800
6 2f0c495d0c100000
7 7eb871490f204000

It seems that this client is using the id/uidl pair to identify messages.
Now it sees all 7 messages as new and downloads the messages again.

The only way I can see fixing this would be using seperate accounts that
don't store the messages after they're "retr"ed.  For seamlessness, I'll use
two different servers, and use the same account names, one for internal
access, and another for internet/home access.  If they don't access their

My question: Is there some other way to fix this and still force the account
to only keep messages only newer than 7 days?

Mike



Reply to: