我发现了很多procmail的例子,以匹配From:标题与wilcards,但我想做一个完全匹配,以防止从:。* [email protected]匹配两个[email protected] 和 [email protected]
这是可能的,如果是这样,怎么样?
习惯的做法是在目标地址的两边添加字边界锚。
:0 * ^From:(.*\<)?jgordon@example\.com\> ...
如果你想匹配正好两个电子邮件地址,而不是其他人,制定一个正则expression式,只会匹配这两个。 在您的具体示例中, b?jgordon@example\.com将匹配bjgordon和jgordon 。 一个常见的类似的模式是想要匹配firstname.lastname和flastnam ; 一个模式是(firstname\.lastname|flastnam)@example\.com 。
.*是与其他字符匹配的内容。 您只需要匹配标题名称后面的空格,以便将其更改为* 。
* ^From: *[email protected]
我怀疑它也可能锚定头的末尾,以避免在最后匹配额外的字符,但我没有testing过自己。
* ^From: *[email protected]$
我有点困惑。 你应该为每个用户有一个procmail。 如果你把它们叠在一起,那就是问题所在。 当然,Unix可以处理它! 只要告诉它如何处理它。 请记住,它stream了下来。 所以你可以挤压东西,他们进来。首先钩住bjgordon。
:0 * To: [email protected] bjgordon_file :0 * To: [email protected] jgordon_file
如果您希望它在规则中生存,请使用抄送规则:
:0 c: * From: root <[email protected]> root_foo_mail.`date +%y%m%d`