如何根据字符集使用情况在 mutt 中选择消息?

如何根据字符集使用情况在 mutt 中选择消息?

我试图将所有使用中文字符或西里尔文(俄语)字符的邮件标记为删除,因为对我来说,它们都是垃圾邮件。

答案1

您可以使用以下方法过滤编码foo~h^content-type:.*foo

然而,这是相当有限的。首先,使用特定字符(中文字符、西里尔字母……)的消息可以用 UTF-8 进行编码。此外,对于带有附件的消息,编码是在 MIME 附件的标头中指定的,从 Mutt 模式的角度来看,这就是正文;您仍然可以使用~Bfoo,但它会很慢,并且可能会出现误报(您不能包含,content-type因为附件标题可能位于多个正文行上)。

可能有外部工具可以识别脚本,但这不再与 Mutt 相关......

如果这是为了垃圾邮件过滤,贝叶斯过滤器可能适合这种事情(不需要知道它是什么脚本)。

您还可以过滤属于特定脚本的某些字符的存在:请参阅使用正则表达式匹配utf-8编码的任意汉字。这在 Mutt 中还不起作用(也许将来),但同时可以使用外部工具。

也可以在不先解码的情况下进行过滤(这更快)。例如,我目前使用以下 pcre 正则表达式(区分大小写)在 postfix 中过滤一些俄罗斯垃圾邮件:

/^Subject:\s*"?=\?[Uu][Tt][Ff]-8\?[Bb]\?(0[J-Z]|(KN|W9)[C-R])/i

相关内容