需要帮助grepping postfix日志

我试图根据已知string(收件人地址)在日志中search未知string(消息ID),然后grep未知string输出整个相关的日志信息。 我能够使用grep和剪切来输出未知的string,但是从那里我很难将它传递给grep。 我用一个pipe道来xargs grep,并没有产生我正在寻找的输出。 这里是我用来grep和cut的命令:

grep 'to=<emailaddress' /var/log/maillog | cut -d ' ' -f 6 

这将产生由Postfix为emailaddress处理的消息的所有未知string的输出。 当我pipe道xargs我收到“grep::没有这样的文件或目录:

 grep 'to=<emailaddress' /var/log/maillog | cut -d ' ' -f 6 | xargs grep /var/log/maillog 

谢谢你的帮助。

我一直在玩我自己的邮件日志。 尝试

 grep 'to=<emailaddress' /var/log/maillog | cut -d ' ' -f 6 | grep -f - /var/log/maillog 

-f -将从stdin中读取要search的string列表。

我写了一个perl脚本,它允许你从日志中grep你想要的任何信息,它将打印所有具有相同队列id的行(带有一个通过文件并且没有文件大小限制):

https://github.com/brablc/postfix-tools/blob/master/pflogrep