すべての受信メールを、メールの日付に基づいて次のディレクトリ構造に整理したいと思います。
ROOT --+-- YYYYMMDD --+-- HH --+-- mm --+-- YYYYMMDD-HHmmSS-000001
| | | |
| | | | ....
| | | |
| | | +-- YYYYMMDD-HHmmSS-NNNNNN
| | +-- mm --
| +-- HH --+-- mm --
各電子メールは個別のファイルとして保存され、ファイルの名前はYYYYMMDD-HHmmss-NNNNNであることに注意してください。ここで、NNNNNは実行番号です。
Procmailまたはmaildropはこれを行うことができますか?そうでない場合、他にどのようなオプションがありますか?
前もって感謝します。
私はあなたが望むすべてを満足させる答えを持っていませんが、その一部を持っています。メール自体の日付ヘッダーの代わりにメールが到着した日付を使用するだけで十分であり、日付ごとに1つのフォルダーでも十分な場合は、maildropを使用してこれを行うことができます。
DEFAULT="$HOME/Maildir"
MAIL = "$HOME/Maildir"
DAY = `date +%d`
MONTH = `date +%m`
YEAR = `date +%y`
ARCHIVEFOLDER = $YEAR$MONTH$DATE
`test -d $MAIL/.$ARCHIVEFOLDER`
if ( $RETURNCODE != 0 )
{
`maildirmake -f $ARCHIVEFOLDER $MAIL`
}
# logfile "/tmp/maildrop"
# log $MAIL/.$SPAMORDNER
to $MAIL/.$ARCHIVEFOLDER
}
これを積み上げていただければ幸いです。
いくつかのPythonを知っているなら、それはかなり些細な練習になるはずです:
Pythonには、標準ライブラリに電子メールパッケージが付属しており、テキストファイルから電子メールを自動的に読み取ることができます 使用可能なオブジェクトに解析します 。それらを解析した後、それに応じて出力することができます(各メッセージには「as_string」メソッドがあります)。
基本的な構造は次のようになります。