ipurge - delete mail from IMAP mailbox or partition based on age or size
ipurge [
-f ] [ -C config-file ] [ -x ] [
-X ] [ -i ] [ -s ] [ -o ] [
-n ] 
[ -d days | -b bytes | -k
Kbytes | -m Mbytes ] 
[ mailbox-pattern... ]
Ipurge deletes messages from the mailbox(es) specified by mailbox-pattern that are older or larger than specified by the -d, -b, -k or -m options. If no mailbox-pattern is given, ipurge works on all mailboxes. If the -x option is given, the message age and size MUST match exactly those specified by -d, -b, -k or -m. The are no default values, and at least one of -d, -b, -k or -m MUST be specified.
Ipurge by default only deletes mail below shared folders, which means that mails in mailbox(es) below INBOX.* and user.* stay untouched. Use the option -f to also delete mail in mailbox(es) below these folders.
Ipurge reads its configuration options out of the imapd.conf(5) file unless specified otherwise by -C.
| -f | Force deletion of mail in all mailboxes. | 
-C config-file
Read configuration options from config-file.
-d days
Age of message in days.
-b bytes
Size of message in bytes.
-k Kbytes
Size of message in Kbytes (2^10 bytes).
-m Mbytes
Size of message in Mbytes (2^20 bytes).
| -x | Perform an exact match on age or size (instead of older or larger). | ||
| -X | Use delivery time instead of Date: header for date matches | ||
| -i | Invert match logic: -x means not equal, date is for newer, size is for smaller | ||
| -s | Skip over messages that have the \Flagged flag set. | ||
| -o | Only purge messages that have the \Deleted flag set. | ||
| -n | Only print messages that would be deleted (dry run). | 
/etc/imapd.conf