我正在运行 postfix + dovecot,所有 IMAP 消息都在/var/vmail/DOMAIN/USER
. 我想制作一个 cron 脚本,该脚本将在名为“误报”的文件夹中为所有用户查找消息,将sa-learn
它们作为火腿,然后将它们移入收件箱。
mv
这里的问题是,这些消息文件中的一个是否安全?还是必须通过某种“官方”方式完成,以便 IMAP 服务器知道此举?
我正在运行 postfix + dovecot,所有 IMAP 消息都在/var/vmail/DOMAIN/USER
. 我想制作一个 cron 脚本,该脚本将在名为“误报”的文件夹中为所有用户查找消息,将sa-learn
它们作为火腿,然后将它们移入收件箱。
mv
这里的问题是,这些消息文件中的一个是否安全?还是必须通过某种“官方”方式完成,以便 IMAP 服务器知道此举?
Dovecot 检测邮箱更改并自动重建索引。但是,您可以使用 dovecot 的doveadm命令来代替“mv”并保存不必要的索引重建。
这样的事情应该有效:
解释:
doveadm search -A mailbox 'False Positives'
-> 返回“误报”文件夹中所有消息的用户/guid/uiddoveadm fetch -u $user text mailbox-guid $guid uid $uid | sa-learn --ham
-> 打印出完整的消息(标题和正文)并将其通过管道传递给 sa-learndoveadm move -u $user INBOX mailbox-guid $guid uid $uid
-> 将消息移至收件箱