我在下面使用的是有效的,但测试电子邮件同时出现在收件箱和目标文件夹(Stuff)中。有没有办法避免重复的 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