fetchmail + procmail の取得結果をサマリー表示する。

2018年2月18日

この記事は最初の投稿日から20年経過しています。内容が古い可能性があります。

fetchmail + procmail した後の画面がなんとなく寂しいので、サマリー表示ができるようにしてみました。

フォルダ単位で何通振り分けられたか表示します。

こんな感じです。

inbox: 4 mail
memo: 1 mail
tmp: 2 mail
  • 必要な環境
    • メールは、Maildir 形式で管理している必要があります。
    • Zaurus で動く GNU awk が必要です。
  • やり方
    • .procmailrc に、LOGFILE=/tmp/procmail.log という行を追加して、procmail がログファイルを出力するようにします。
    • このログファイルを以下のようなシェルスクリプトに食わせてやると上記のような表示が出てきます。
LOGFILE=/tmp/procmail.log
if [ -f $LOGFILE ]
then
gawk '{
if ($1 != "Subject:")
print $2
}' $LOGFILE | gawk -F/ '{
item[$1]++
} END {
for(i in item)
printf("%10s: %s mail\n", i ,item[i])
}'
rm $LOGFILE
else
echo no new mail.
fi

もっと簡単にできそうな気もするのですが、とりあえず動いているので良しとしてます。

さらに、たまにうまく集計できなくて表示がおかしくなるのですが、だいたいの場合は集計できているので、こちらも追求せず。

という怪しげなサマリー表示ですが、気分的に結構重宝しています。

mail,Zaurus

Posted by toshyon