我在下面使用的是有效的,但是测试电子邮件会同时出现在收件箱和目标文件夹(东西)中。有没有避免重复imap消息的方法?
VERBOSE=on
PATH=/usr/bin:/usr/local/bin
MAILDIR=$HOME/boxes/domain.com/fred^/.imap/
LOGFILE=$HOME/proclog
SHELL=/bin/sh
:0:
* ^Subject:.*test
Stuff日志结果:
procmail: Assigning "SHELL=/bin/sh"
procmail: Match on "^Subject:.*test"
procmail: Locking "Stuff.lock"
procmail: Assigning "LASTFOLDER=Stuff"
procmail: Opening "Stuff"
procmail: Acquiring kernel-lock
procmail: Unlocking "Stuff.lock"
procmail: Notified comsat: "username@number:/usr/home/username/boxes/domian.com/fred^/.imap//Stuff"
From person@email.com Sat Jan 24 00:04:42 2015
Subject: test
Folder: Stuff 2213更新:假设消息在找到匹配时被复制,下面是我尝试排序的方式,然后检测并消除重复的内容:
VERBOSE=yes
LOGABSTRACT=all
PATH=/usr/bin:/usr/local/bin
LOGFILE=$HOME/proclog
SHELL=/bin/sh
MAILDIR=$HOME/boxes/mydomain.com/
INBOX=$HOME/boxes/mydomain.com/fred
STUFF=$HOME/boxes/mydomain.com/fred^/.imap/Stuff
:0
* ^Subject:.*test
${STUFF}
:0 Whc: msgid.lock
| formail -D 4096 $MAILDIR/msgid.cache
:0 a:
dev/null我也看到过这个例子:
:0 Wh:dup
| formail -D 4096 $MAILDIR/msgid.cache 发布于 2015-01-28 07:20:18
非常感谢您的所有周到的投入。您的绝对正确,不相关的采购邮件,并逃避对网络的支持。顺便说一句,没有其他菜谱在使用。
幸运的一笔:从一对网络用户那里找到一个古老的帖子,解释如何在不让qmail干扰的情况下编写食谱。
http://ziggr.com/pairmail/
EXITCODE=99告诉qmail,我们将负责传递每条消息,而qmail不需要将其传递到邮箱。如果我们不这样做,qmail将看到默认的返回代码0 (OK),并将其解释为“筛选程序说电子邮件是可以接受的,所以现在我应该交付它。”这将导致邮箱中所有邮件登陆的副本副本,以及垃圾邮件/火腿邮箱中的过滤垃圾邮件/火腿副本。
该页面中包括一个显示qmail如何处理邮件的图表,以及恢复垃圾邮件过滤的方法。我自己的过滤工作,没有重复登陆收件箱,并等待看看是否垃圾邮件过滤工作正常。
LOGFILE=$HOME/proclog
VERBOSE=YES
# prevent qmail (the program that is calling procmail
# as a filter) from delivering the original mail.
EXITCODE=99
MAILDIR=$HOME/boxes/domain.com
INBOX=$MAILDIR/fred
GREY=$MAILDIR/fred^/.imap/grey
JUNK=$MAILDIR/fred^/.imap/Junk
TEST=$MAILDIR/fred^/.imap/Test
# Spam level 5.0 or greater
:0
* ^X-Spam-Level: \*\*\*\*\*
${JUNK}
# Spam level 2.0-4.9: hold in grey area
:0
* ^X-Spam-Level: \*\*
${GREY}
:0:
* ^Subject:.*test
${TEST}
# Spam level < 2.0: it's probably real email, deliver as normal
:0:
${INBOX}https://stackoverflow.com/questions/28120828
复制相似问题