![解码整个 Maildir 中的 TNEF / winmail.dat](https://linux22.com/image/488409/%E8%A7%A3%E7%A0%81%E6%95%B4%E4%B8%AA%20Maildir%20%E4%B8%AD%E7%9A%84%20TNEF%20%2F%20winmail.dat.png)
由于从 MS Exchange 过渡到 Courier IMAP,我们所有的旧邮件都带有 winmail.dat 附件,有时还包含邮件的原始附件。我正在寻找一种工具,可以扫描整个 Maildir 并将 winmail.dat-s 转换为“普通附件”(或删除仅包含邮件 RTF 版本的附件)。我知道有一些适用于 *nix 的命令行工具,但我还没有找到处理整个 Maildir 的自动化解决方案。有什么建议吗?
答案1
经过几分钟的搜索,我们发现许多人使用 Outlook Express 或 Thunderbird 进行这种转换,方法是下载邮件,然后将其移回 IMAP 服务器。如果您只有几个邮箱需要转换,那么这可能是阻力最小的途径。
在我看来,您要么将一组较小的实用程序链接在一起,要么自己“从头开始”编写一些脚本。看起来可能有足够的 Python 和 Perl 模块来处理解析邮件目录,因此编写起来应该不会太难。不过,这看起来并不好玩。(就我个人而言,我讨厌编写处理电子邮件的代码……)
编辑:
这里有几个关于 Outlook / Outlook Express 转换 WINMAIL.DAT 文件的链接。我手头上还没有这些带有 TNEF 附件的邮件,所以没法尝试一下。
答案2
很抱歉回答这样一个老问题 - 我相信上述答案和评论是一个很好的解决方案 - 但我想指出 tnef (http://sourceforge.net/projects/tnef/和https://github.com/verdammelt/tnef) 或许可以用来编写解决方案。
(全面披露:我是该工具的作者/维护者)。