查看maillog的中文邮件主题

2650阅读 0评论2014-08-13 wwmshe
分类:系统运维

maillog可以显示邮件的主题。但如果邮件的主题是中文,则会显示成乱码:

Jun 26 08:18:00 mfus02 postfix/cleanup[30403]: F2226154803: warning: header Subject: =?utf-8?B?UmU65L2g5aW96bKB5oC7?= from cm02.71.com[218.85.132.166]; from= to=<837260319@qq.com> proto=ESMTP helo=

那要怎么查看中文邮件的主题呢?

其实这里的乱码是base64编码,只要通过某种解码工具将其解码出来就可以了。

可以通过第三方解码工具base64编码解码器来解码。
首先将日志里的对应的邮件主题编码复制出来,就是“=?utf-8?B?”和“?=”之间的那串编码

 

(比如日志里显示的主题是:

Subject: =?utf-8?B?6ZmI5oC75L2g5aW9?= from

那么对应的base64编码就是:

6ZmI5oC75L2g5aW9

 

黏贴到“base64编码信息”处的输入框,编码方式选择utf-8,然后单击解码,就可以看到对应的中文了:


如果是gb2312编码,例如 Subject: =?gb2312?B?MTAwODE1MSDQ+brNwarC57Ht?=                                                                                                                                                                                                    

编码方式就要选择ANSI



如果是BIG5编码,例如Subject: =?BIG5?B?t3O02qahILdSsKilSyCzzbL6pV0grbupYKjgIERpb3Ktfbb4IKrirX1ya3A=?=

那这个工具就解码不了了。因为BIG5编码是繁体中文的编码,而我们的操作系统是简体中文版的。

可以通过服务器本身来解码,方法如下:

首先在secureCRT里,将该服务器session属性的显示编码设置为BIG5:

然后执行以下命令即可:

echo 't3O02qahILdSsKilSyCzzbL6pV0grbupYKjgIERpb3Ktfbb4IKrirX1ya3A=' | perl -e 'use MIME::Base64; $_ = decode_base64(<>); print;' 


上一篇:IIS 7无法写入配置文件C:\Windows\System32\inetsrv\config\applicationHost.config
下一篇:MSE安装失败,提示0x80070643