我每天都会收到多封来自不同发件人、主题不同的邮件。通常,Subject:
中有一些标识符(整数),我想根据该标识符对邮件进行排序。标识符的解析应该不成问题。但是,没有预先定义有效整数的范围。
我想要的是具有相同标识符的邮件以某种方式捆绑在一起,这些邮件可以存储在每个标识符的单独文件夹中,也可以在对话中列出,以便邮件程序将它们显示为已连接。
我现在运行的是一个 getmail/procmail
组合来获取这些邮件。
我需要的是一些如何解决问题的想法。如果有人提示如何找到解决方案,最好使用 procmail
,请告诉我。谢谢!
示例:
mail1:发件人:User1 主题:ID 1234 的消息
mail2:发件人:User2 主题:ID 4567 的消息
mail3:发件人:User3 主题:ID 1234 已完成
mail4:发件人:User1 主题:起始 ID 9999
mail5:发件人:User2 主题:完成 ID 9999
我希望捆绑的 Subject:
中具有相同 ID 的所有消息,对于上面的示例,这将是 3 个“桶”:1234
、4567
、9999
。
最佳答案
要从主题: header 中提取第一个整数并将其用作要保存到的文件夹的名称,
:0
* ^Subject:[^0-9]*\/[0-9]+
$MATCH
如果您希望该文件夹成为 Maildir 文件夹而不是平面 Berkeley mbox 文件,请改用 $MATCH/.
。
特殊标记\/
使Procmail将与该标记后面的正则表达式匹配的输入字符串存储在变量MATCH
中。
关于linux - 按主题内容对邮件进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43679978/