我目前正在尝试弄清楚如何删除 Debian 服务器上 Maildir 安装的一个文件夹中的旧电子邮件。基本上我想要做的是每天运行一个 cron 作业,以便检查 Maildir 中的特定文件夹是否有旧电子邮件,如果它们超过设定的天数,则将其删除。
有没有一种简单的方法可以按日期过滤来自 Maildir 的电子邮件,或者我必须以文本形式阅读每封电子邮件,查找时间戳,转换它,减去提到的天数,然后将其与当前的天数进行比较日期?
如果那里已经有更好的轮子,我不想发明轮子,所以如果有人可以帮助我做这件事,我会很高兴。
谢谢!
注意:我正在使用带有 Postfix 2.9.6 和 Dovecot 2.1.7 的 Debian 7.8
既然你有 dovecot,你可以用 doveadm(1) 做到这一点。
例如删除用户在 30 天之前保存在垃圾箱文件夹中的邮件:
您可以为所有用户使用 -A 标志,如果您想首先检查匹配的邮件,请使用搜索/获取命令 - 请参阅 doveadm-search(1):