我如何才能查看通过 mailq 命令获取的邮件 ID 的内容?

我如何才能查看通过 mailq 命令获取的邮件 ID 的内容?

我使用mailq命令并得到如下行:

A705238B4C   603953 Wed May 23 11:09:58  [email protected]

所以,现在我想知道是否有一种方法可以通过邮件 ID“读取”邮件的实际内容A705238B4C

答案1

最好的方法是利用postcat命令。

postcat -q A705238B4C

至少我现在可以查看的系统/var/spool/postfix是主目录。重要的子目录包括active、、等。排队文件可以使用完整文件名 ( )deferred或某种级别的哈希深度 ( ) 进行存储。bounceA705238B4CA/7/05238B4C

答案2

正如所述杰夫的回答您可以使用postcat-q选项。

但是从 Postfix 2.7 版本开始,您还可以通过添加-hand/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

相关内容