キューがスパムメールでいっぱいになった後、eximメールキューから特定のメールアドレスからすべてのメッセージを削除する方法を理解するために、過去1時間を費やしました。
[email protected]からのメッセージをすべて削除します。より詳細な出力を取得するために、eximコマンドに-vを追加できます。
exiqgrep -i -f [email protected] | exim -Mrm
これは、アイテムごとにバウンスメッセージを生成する少し異なる方法で実行できます。これは、侵害されたメールボックスがどれほどの害を与えているかをエンドユーザーに強調します。
exiqgrep -i -f [email protected] | exim -Mg
次の行を使用して、すべてのメッセージを削除します。
exim -bp | grep [email protected] | sed -r 's/(.{10})(.{16}).*/\2/' | xargs exim -Mrm
次のことを行います。
exim -bp
Eximメールキューを一覧表示します
grep [email protected]
特定のメールアドレスを持つ行のみを選択します
sed -r 's/(.{10})(.{16}).*/\2/'
メールのIDを選択します
xargs exim -Mrm
キューからメッセージを削除します
最適化できると確信しています。最適化できるかどうか、またその方法を教えてください。
Eximキューをクリアするもう1つの方法は、この場合は電子メールの電子メールアドレスになる3番目のフィールドを印刷することです。 grepの電子メールアドレスと一致する結果は、exim -Mrmコマンドによって削除されます。
exim -bp | grep [email protected] | awk {'print $3'} | xargs exim -Mrm
フリーズしたメールをクリアしたい場合は、email @ address.comを「frozen」に置き換えることができます