当我使用不同的电子邮件客户端来阅读/发送我的邮件时,我想设置Procmail将电子邮件移至通常由Thunderbird Filter功能完成的文件夹。

我知道我可以通过在电子邮件用户中使用以下代码为Procmail来做到这一点.procmailrc文件:

:0:
* ^From:.test@host.name.com
myfolder

但是我有一个大约50个电子邮件地址的列表,我想将其移至该特定的“ MyFolter”。

因此使用

:0:
* ^From:.first@mail.com
* ^From:.second@mail.com
jimsmail

没有帮助,因为Procmail通过使用和操作员来解释它们。因此,如果第一个@...和第二@...,上面的代码将是正确的,这将永远不正确。

因此,我如何使用或操作员。

实际上,我有一个简单的文本文件,所有电子邮件adresses都在其中。拥有该文件中准备就绪的Procmail的功能会很酷,并从与文件中至少一行的匹配中检查,将电子邮件移至“ myFolder”。

就像是

 :0:
 * ^From:file(email.txt)
 myfolder

如果可能或类似的东西,是否可以使用任何bode。我不想在我的procmailrc文件中添加这3行。

有帮助吗?

解决方案 2

我找到了解决方案。使用此解决方案,我能够使用一个简单的电子邮件文本文件,每行中都保留所有电子邮件地址。

我的.procmailrc中的代码如下:

EMAILFILE=/path/to/my/emailfile
FROM=`formail -xFrom: | sed -e 's/ *(.*)//; s/>.*//; s/.*[:<] *//'`
:0
* ? fgrep -qxis $FROM $EMAILFILE
myfolder

其他提示

Procmail使用Regexps,因此您可以与 | 特点。

:0:
* ^From:.((first|second|third)@mail.com|(fourth|fifth)@othermail.com)
myfolder

会工作。一条线上可能会使五十个凌乱,请注意...

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top