Procmailはフォルダにコピーされた電子メールを識別します。

Procmailはフォルダにコピーされた電子メールを識別します。

私が働いている場所では、多くのグループに電子メールを送信します。つまり、新しいグループがスレッドに追加されると、メールはスレッド内でも任意のディレクトリにフィルタリングされます。メールを送信するすべてのグループフォルダ内のすべての電子メールを表示したいです。これは、より多くのディスク領域を使用することを意味しますが、ディスク領域は安価です。これには「c」フラグがありますが、問題は、各ルールに「c」を追加すると、各電子メールがそのフォルダと最後の受信トレイに配置されることです。だから私はこの電子メールが特定のフォルダに認識/フィルタリングされているかどうかを識別し、そうでない場合は受信トレイに入ることを許可する最後のルールが必要です。 "test -z $LASTFOLDER"を試してみましたが、うまくいくようです。ただし、procmailがfetchmailの失敗を返し、imapサーバーから自分のEメールを削除せず、混乱が発生したことを除いてください。正しい方法は何ですか?メールフィルタリングに別の方法を使用する必要がありますか?私が欲しいものを明確に書くことができますか?

ベストアンサー1

メッセージをリストフォルダにソートするすべてのルールに対して同様の操作を実行できます。

:0
* ^List-Id:...
{
    :0 c:
    somefolder

    :0 fw
    | formail -a X-Chad-Loop: Chad was here
}

そして終わる直前に:

:0
* ^X-Chad-Loop:\ Chad\ was\ here
{
    :0
    /dev/null

    HOST
}

考えるへの転送も記録されます/dev/null。気に入らない場合は、プレイする必要がありますLOGABSTRACT

参考までに、procmail長い間メンテナンスされておらず、よく知られているセキュリティ問題があることに注意してください。いくつかの既存の開発者でさえ、代わりに他のものを使用することを提案しています。それだけの価値があるという点で、私の個人的な好みは周波数分割多重、彼の安全記録ははるかに良いです。

おすすめ記事