Plesk環境でqmailキュー内のメールを送信元メールアドレスで削除する

Pleskにはqmailのqueを閲覧、削除するmailqueuemngが用意されてる。
ただ、/usr/local/psa/admin/sbin/mailqueuemng のオプションには
サブジェクトで一括削除する -Sオプションはあっても、
送信元アドレスで一括削除してくれるものは無いようで
海外のフォーラムなどでも処理が見当たらなかったので無理矢理書いてみた。

for id in `/var/qmail/bin/qmail-qread | grep "送信元メールアドレス"  | cut -d" " -f7 | cut -d"#" -f2`; do delque+="-d${id} "; done ;/usr/local/psa/admin/sbin/mailqueuemng $delque

面倒なので1行で実行出来るように記述
※送信元メールアドレスを適宜変更

#解説

for id in `/var/qmail/bin/qmail-qread | grep "送信元メールアドレス" | cut -d" " -f7 | cut -d"#" -f2`; do delque+elque+="-d${id} "; done ;

/var/qmail/bin/qmail-qreadから送信元Fromアドレスを含むキューの送信IDを抜き出して
抜き出したキュー数分の -dをまとめて作成。

/usr/local/psa/admin/sbin/mailqueuemng -d*** -d*** ……….
で一括削除な処理

今さらqmailってのもなぁって思いながらも
抱えてる古めのサーバが現役って事もありで….

You might also like

Leave Your Comment