おまぬけ活動日誌

最近のツッコまれどころ

この日誌から Google してもらう


2012年06月19日(Tue) いい天気かと思うと霧雨が降っている [長年日記]

[memo] ある時間の範囲に届いたメールをmuttで消す

職場で使っているGMailのPOPサーバの動作がなんだか不安定だと思っていたら、 fetchmailさん、 ある晩どばっと3年ほど前のメールからとってきてくれました。 やれやれ。 この晩に届いたメールだけ捨てたいので試行錯誤した結果をメモしておきます。

要らないメールの最初と最後を特定する。 /var/log/mail.logを見て、 3年前の重複して届いたメールのMessage IDをメモしました。 その一通前に受け取ったメールのMessage IDもメモをして、 そのメールがもう一度届いていることを確認しました。 一部ローカルなマシンのcronからのメールも含まれてしまいますが、 メールスプール中の、 この2つのMessage IDのメールとその間にあるメールが重複しているものとして 捨てることにします。

まず、.muttrcなどMuttの設定ファイルを編集して、 一時的に起動時にメールにタグをつけるのを止めるようにしておきます。

Inboxが表示されたら(今回は35,000通ほど来ていたのでしばらくかかりました)、 :set sort=mailbox-orderします。 これで表示がスプールと同じ順番になります。

次に、先ほどメモしたおいたMessage-IDを、/ ~i <Message-ID>して探し、 Inbox内での番号をメモしておきます。

メモしておいた番号を使って、T ~m <最初の番号>-<最後の番号>して、 消したいメールにタグを付けます。

タグを付けたメールを、;dして、消去します。

やれやれ。もうこの手順が必要になることがありませんように…


作り手とその取り巻きだけが楽しんでる間は本物じゃない。その中身が理解できない人々の生活を変えてこそ本物だ


zunda <zunda at freeshell.org>