![在终端中处理旧的 Thunderbird 收件箱电子邮件](https://linux22.com/image/1004509/%E5%9C%A8%E7%BB%88%E7%AB%AF%E4%B8%AD%E5%A4%84%E7%90%86%E6%97%A7%E7%9A%84%20Thunderbird%20%E6%94%B6%E4%BB%B6%E7%AE%B1%E7%94%B5%E5%AD%90%E9%82%AE%E4%BB%B6.png)
我想对 Thunderbird 收件箱中的所有电子邮件运行一个循环,以便我可以找到其中的一些部分并将其复制到文本文件中。
我如何在终端中执行此操作?
答案1
引用莫兹拉兹尼:
Thunderbird 使用 mbox 文件来存储文件夹的消息。每个 mbox 文件都是一个普通的 7 位 ASCII 文本文件,带有文件夹名称,没有文件扩展名。您可以使用文本编辑器阅读消息,但由于所有标题通常都是隐藏的、HTML 标记未被解释,并且对于任何二进制附件,都会看到大块字符连在一起,因此这对用户来说非常不友好。
如果您不介意一些乱码,这些文件可以简单地与grep
朋友一起处理,例如:
$ grep -r --exclude="*.msf" "Subject: some subject" /path/to/Inbox.sbd
mail_dir_01:Subject: some subject
$ sed -n '/Subject: some subject/,/^From - /p' mail_dir_01
这里,grep
在收件箱内的所有邮件文件夹中搜索主题为“某个主题”的邮件,并给出其文件夹文件名mail_dir_01
,然后从该行开始sed
显示该邮件。但是,可能会提供更好的方法。Subject:
awk