.procmailrc中有什么

时间:2020-03-05 18:39:05  来源:igfitidea点击:

我们在.procmailrc文件中放入任何方便的常规项目吗?

解决方案

回答

只需简单的操作即可将邮件移至相应的文件夹,将某些内容转发至email2sms地址,将垃圾邮件移至垃圾邮件文件夹。我为之感到骄傲的一件事是如何将垃圾邮件标记为"已读"(这是针对Courier IMAP和Maildir,其中"已读"的意思是"移至其他文件夹并更改文件名"):

:0                                                                              
* ^X-Spam                       # the header our filter inserts for spam                                                                   
{                                                                               
    :0                                                                         
    .Junk\ E-mail/              # stores in .Junk E-mail/new/                                                                                      

    :0                                                                          
    * LASTFOLDER ?? /\/[^/]+$   # get the stored message's filename                                                   
    { tail=$MATCH }             # and put it into $tail
    # now move the message                                                            
    TRAP="mv .Junk\ E-mail/new/$tail .Junk\ E-mail/cur/$tail:2,S"               
}

回答

如果回复时,许多邮件发件人都在邮件的主题前加上" Re:"作为前缀。如果该前缀还不存在,则德语Outlook会以" AW:"(对于" AntWort")为前缀。不幸的是,这两种行为发生冲突,导致出现诸如" Re:AW:Re:AW:Re:AW:Re:AW:Lunch"的邮件主题。所以我现在有:

:0f
* ^Subject: (Antwort|AW):
|sed -r -e '1,/^$/s/^(Subject: )(((Antwort: )|(Re: )|(AW: ))+)(.*)/Re: \nX-Orig-Subject: /'

这就将这些(以及" Antwort:"前缀,我显然在某些时候也被打扰了)缩减为单个" Re:"。

回答

为了阻止奇怪的俄语和中文垃圾邮件,我使用了此procmail配置。

UNREADABLE='[^?"]*big5|iso-2022-jp|ISO-2022-KR|euc-kr|gb2312|ks_c_5601-1987'
:0:
* ^Content-Type:.*multipart
* B ?? $ ^Content-Type:.*^?.*charset="?($UNREADABLE)
spam-unreadable

回答

我的.procmailrc文件中有各种过滤器,但最有用的是这一过滤器,在进行任何其他更改之前,我将该过滤器添加到了文件的最顶部。

:0 c:
mail.save

这样会保存所有内容的副本,然后继续其余的食谱。如果我做错了什么,我的电子邮件将保存在文件" mail.save"中。当我确定所做的更改正在起作用时,请注释掉这些行,直到下一次。