Bha*_*h K 1 unix perl procmail
打算写一个简单的procmail收件人,如果在主题中找到"Unprovisioned"文本,它会将邮件转发给我.
:0:
* ^Subject:.*Unprovisioned.*
! me@test.com
Run Code Online (Sandbox Code Playgroud)
不幸的是,来自邮件服务器的邮件消息中的主题字段是MIME编码字语法.
形式是:"=?charset?编码?编码文本?=".
Subject: =?UTF-8?B?QURWSVNPUlk6IEJNRFMgMTg0NSwgTkVXIFlPUksgLSBVbnByb3Zpc2lvbmVkIENvbm4gQQ==?=
=?UTF-8?B?bGVydA==?=
Run Code Online (Sandbox Code Playgroud)
上面的主题是utf-8 charset,base64编码,文本折叠为两行.所以想知道是否有任何机制/脚本/实用程序来解析它并转换为字符串格式,以便我可以应用我的procmail过滤器.当然,我可以编写一个perl脚本来解析这个执行所需的验证,但是如果可能的话,希望避免使用它.
小智 9
Encode附带的Encode :: MIME :: Header,可通过Encode直接访问:
use Encode qw(encode decode);
my $header_text = decode('MIME-Header', $header);
Run Code Online (Sandbox Code Playgroud)