Thunderbird 更改 Maildir 文件夹中的文件名

Thunderbird 更改 Maildir 文件夹中的文件名

每当我将邮件放入Maildir/.Send/cur/文件夹并在 Thunderbird 中查看此电子邮件时,文件名突然变为如下形式:

1573421271.M387702P15858.域名.com:2,S

对我来说这没问题,但 Thunderbird 非常不稳定。有时不会发生这种情况。

可以关闭此功能吗?或者,我能弄清楚这些数字的含义吗?我知道第一个是纪元。那么小数点后的数字呢?

谢谢

答案1

1573421271.M387702P15858.域名.com:2,S

这实际上是标准文件名格式用于 Maildir 内的消息。

子目录中的名称cur并不是完全静态的:后面的部分:是信息/标志字段,除其他信息外,还指示消息是否已被看到(已读)、是否已被回复或者转发等等。

因此,Thunderbird 需要重命名该文件以将消息标记为“已读”;如果该文件之前有一些任意名称(根据 Maildir 标准无效),通常应用程序最终也会为其生成一个新的有效名称前缀。

名称的主要部分(左侧:)由邮件应用程序(或通常由邮件送货程序或 IMAP 服务器)。它们的唯一目的是确保文件名独特的,这样发送到同一个文件夹的多个邮件就不会互相冲突。

例如,M387702是来自同一纪元时间的微秒数,P15858是执行传送的程序的进程 ID,V<num>以及I<num>是文件的设备和 inode 编号。

(规范并没有说前缀必须包含可解析的信息——它只是必须是唯一的。但是,可能有逗号分隔的扩展字段向某些邮件服务(如 Dovecot)提供额外信息。

可以关闭此功能吗?

不。Thunderbird 只是遵循 Maildir 格式规则。

你可以声称任何足够独特的前缀都是有效的——格式规范也会同意——但是一旦消息从它移动new/cur/必须附加了后缀:2,<flags>

因此,egcur/My Little Message.eml:2,是一个有效的名称,但cur/My Little Message.eml单独使用则不是。

相关内容