如何从 CentOS 7 终端读取 Maildir RFC822 消息?

如何从 CentOS 7 终端读取 Maildir RFC822 消息?

在安装了、、的CentOS 7服务器中,我将邮件配置为以格式存储。 dovecotpostfixmailxMaildir

如何使用终端访问和查看RFC822用户Maildir收件箱中存储的邮件? 我使用什么具体语法?

回答

对于从搜索引擎找到此内容的人来说,解决方法是编写一个JavaMail程序public static void main来使用以下命令访问收件箱相同的密码这与下面建议的答案不起作用mutt -f {username@imap-server}INBOX。 java 程序可以从CentOS 7 terminal.相比之下,下面的答案中给出的建议似乎不适用于onCentOS 7或 的标准配置。为了让下面的答案真正解决问题,受访者需要确定使其正常工作所需的配置参数。我的理解是,受访者的建议是在不同风格的.dovecotCentOS 7CentOS 7Linux

答案1

如果您想使用 MUA(邮件用户代理,用于读写邮件的客户端软件)来阅读它们,那么您只需要使用支持 Maildir 格式的软件即可。穆特确实如此。使用-f命令行选项告诉它要打开哪个文件夹:

mutt -f Mail/INBOX

mutt -f Mail/otherfolder

根据您的配置,Maildir 文件夹可能存储在不同的位置,~/Mail例如~/Maildir.检查您的 Dovecot 配置或仅查看您的主目录以了解它们的位置。

另一种方法,可以说是更好的方法,是利用 Mutt(以及其他基于终端的 MUA)支持 IMAP 的事实,这样您就可以告诉它通过 Dovecot 服务器访问邮件,并保留文件夹如何存储和排列的详细信息到达夫科特。对于 Mutt,您可以使用特殊语法指定 IMAP 文件夹:

mutt -f {username@imap-server}INBOX

当然,如果通过 IMAP 访问,那么您不需要在与 Dovecot 服务器相同的系统上运行 mutt。

如果您想以交互方式阅读邮件的话。但在你的另一个问题您给我的印象是您希望使用脚本和自动处理等来访问各个电子邮件。

为此,您应该咨询Maildir 格式的文档但本质上它非常简单:每条消息都存在于一个单独的文件中,因此很容易扫描文件系统中的消息并将它们一一挑选出来,因为每条消息都独立包含在一个文件中。如果您想将新邮件存储在 Maildir 文件夹中,为了符合 Maildir 无锁协议以避免竞争条件等问题,则需要注意一些棘手的细节,但如果您只是读取或更改状态标志(看到的与看不见的,等等...)那么你不需要太担心。

答案2

Maildir 是一个基于服务器的邮件目录,它保存电子邮件、联系人、日历等的所有详细信息。我总是获得 Maildir 文件的备份,因为我们不知道重要数据何时会损坏。最近,由于未知原因,我的服务器邮件目录无法打开,我感到恐慌,因为我无法打开所有重要的邮件,然后我得到了打开 Maildir 文件的解决方案这里是我获得解决方案的链接。

相关内容