我在一个文件夹中有多个文件,每个文件都有一封电子邮件。每条消息都有一个格式的标题
Subject: formatting fonts
To: XXX@XXX.COM
From: sender
email body
我怎样才能得到尸体?我可以通过“read XX”之类的方式获取主题,to .. 由于没有“Body:”之类的标签,我现在无法获取电子邮件正文
任何帮助将不胜感激。
你想要除了第一段之外的所有内容。sed
可以这样做:
sed '1,/^$/d' file.txt
它说的是——从头开始,(1
)转到第一行空白(^$
——在开头^
和结尾之间没有任何内容$
)并删除它(d
)。
电子邮件的标题和正文始终由一个空行分隔。您需要阅读(并忽略)所有行,直到看到空白行。文件的其余部分是正文。
将消息传递到:
| formail -I ''
procmail 包的一部分。
此解决方案使用pcregrep
并匹配主题、至和来自行,然后得到该匹配的逆。
pcregrep -M -v 'Subject.*\nTo.*\nFrom.*\n' file.txt