我有一些我用getmail抓取的maildirs(收件箱和发送)我想给eml文件名称代表每封邮件到达(或发送)的日期和时间:
johnsmith@example.org-inbox-2015-07-28T20.02.14+0000.eml
(我希望Windows读取文件,所以没有冒号)
我注意到eml文件中只有一个出现“Date:”:
Date: Tue, 28 Jul 2015 20:02:14 +0000
我可以依靠这个标题重命名文件吗?它可靠吗?
(我计划为此任务编写posix或bash脚本)
答案 0 :(得分:2)
简短回答: nope 。
Date
标题(以及大多数其他标题)由客户端设置(并且不是必需的),因此它可以是任何内容或不存在。
阻止appart,因为Date
字段是由MUA(/ MSA)设置的,并且仍然有很多人没有与NTP同步或者不关心正确配置他们的工作站,所以它经常发生错误。
我也经常看到配置错误的自动邮件或MTA ...
Received
标题中的日期略微更值得信赖,因为它是由重新分析的MTA设置的,并且概率它们配置得更好。
请注意,除了您服务器的最后一个(最常出现的顺序)(在您的情况下为GMail),它们也可以伪造。