我使用mailq
命令并得到如下行:
A705238B4C 603953 Wed May 23 11:09:58 [email protected]
所以,现在我想知道是否有一种方法可以通过邮件 ID“读取”邮件的实际内容A705238B4C
答案1
最好的方法是利用postcat
命令。
postcat -q A705238B4C
至少我现在可以查看的系统/var/spool/postfix
是主目录。重要的子目录包括active
、、等。排队文件可以使用完整文件名 ( )deferred
或某种级别的哈希深度 ( ) 进行存储。bounce
A705238B4C
A/7/05238B4C
答案2
正如所述杰夫的回答您可以使用postcat
该-q
选项。
但是从 Postfix 2.7 版本开始,您还可以通过添加-h
and/or-b
选项来获得可读的输出:
-b 显示正文内容。
-h 显示邮件头内容。
-q 在 Postfix 队列中搜索命名的文件,而不是按照字面意思来理解。
因此这将向您显示带有标题和正文的整个原始消息:
id=DEDCB58048B
postcat -bh -q $id
或者显示所有排队消息的标题,你可以执行以下操作:
mailq | awk '/^[A-F0-9]+\s+/ {print $1}' \
| while read id; do echo $id; postcat -h -q $id; echo; done