根据.procmailrc文件中的文本将utf8解码为ISO-8859-1邮件

着手编写一个简单的procmail收件人,如果在主题中找到文本“ ABC Store:New Order”,它将转发邮件。

 :0
    * ^(To|From).*[email protected]
    * ^Subject:.*ABC Store: New Order*
    {

不幸的是,来自邮件服务器的邮件消息中的主题字段使用的是MIME编码词语法。

主题:=?UTF-8?B?QUJDIFN0b3J10iBOZXcgT3JkZXI =?=

上面的主题是utf-8 ISO-8859-1字符集,因此想知道是否有任何机制/脚本/实用程序可以对此进行解析并转换为字符串格式,以便我可以使用procmail过滤器。

安菲

Subject:在分配给procmail变量之前,可以使用perl一种线性代码进行解码

# Store "may be encoded" Subject: into $SUBJECT after conversion to ISO-8859-1
:0 h
* ^Subject:.*=\?
SUBJECT=| formail -cXSubject: | perl -MEncode=from_to -pe 'from_to $_, "MIME-Header", "iso-8859-1"'

# Store all remaining cases of Subject: into $SUBJECT
:0 hE
SUBJECT=| formail -cXSubject:

# trigger recipe based also on $SUBJECT content
:0
* ^(To|From).*[email protected]
* SUBJECT ?? ^Subject:.*ABC Store: New Order
{
....
}

评论(2020-03-07):最好转换为UTF-8字符集而不是ISO-8859- *。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章