Postfix
需要幫助 grepping postfix 日誌
我正在嘗試根據已知字元串(收件人地址)在日誌中搜尋未知字元串(消息ID),然後grep未知字元串以輸出整個相關日誌資訊。我可以使用 grep 和 cut 來輸出未知字元串,但是從那裡我很難將其傳遞給 grep。我已經使用了 xargs grep 的管道,但這並沒有產生我正在尋找的輸出。這是我用來 grep 和剪切的命令:
grep 'to=<emailaddress' /var/log/maillog | cut -d ' ' -f 6
這會為 Postfix 為電子郵件地址處理的消息生成所有未知字元串的輸出。當我通過管道傳輸到 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 -
字元串列表。
我寫了一個 perl 腳本,它允許你從日誌中 grep 任何你想要的資訊,它會列印具有相同隊列 id 的所有行(一次通過文件並且沒有文件大小限制):
https://github.com/brablc/postfix-tools/blob/master/pflogrep