人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

procmailに関する質問です。アドレスAに来たメールをスパムかどうか判定後、スパムであれば送信者(From)をアドレスAに変更後、Bに転送し、元のスパムは削除したいのですが、そのために

〜判定レシピ〜
| formail -I ”From: A”
! B
/dev/null

というレシピを書きました。すると、すべてのメールが削除されるという目に遭いました。ログを見ると一連のこのレシピに対して
procmail: Skipped ”|formail -I ”From: A””
procmail: Skipped ”! B”
procmail: Skipped ”/dev/null”

となっております。

考えられる原因と解決策を共にご教授いただけないでしょうか。もっとも早かった方に500pt差し上げたく存じます。

●質問者: integral
●カテゴリ:コンピュータ
✍キーワード:procmail アドレス スパム メール レシピ
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● thrillseeker
●500ポイント

http://www.ipc.hokusei.ac.jp/doc/online/procmail/setuprc.html

.procmailrc の書き方

まず、ひとつのレシピにはひとつのアクションしか指定出来ません。

質問の例では3つのアクションを指定しているので、全て skip されたのだと思います。


3つの処理をひとつのアクションにまとめるには、


0:

?判別定義?

| formail -I ”From: A” | /usr/sbin/sendmail B


で行けると思います。

(レシピの先頭を示す :0 の行に c を入れなければ、指定アクションが

成功したメールは A のメールボックスに残りません。)


2 ● くまっぷす
●10ポイント

http://www.club.kyutech.ac.jp/support/manual/procmail.html

Procmailマニュアル

これ、.procmailrcの全体でしょうか?だとするとレシピは先頭が0:の行から始まるんで.procmailrcのレシピのひとつとしては


:0

* ~X-SPAM-Status: Yes (←ここは適当に)

| formail -I ”From: A”

! B

/dev/null


みたいな書き方になると思います。


私なら失敗すると怖いんで

/dev/null

ではなく例えば

/home/hoge/SPAM/.

みたいにローカルのディレクトリに一旦溜めるようにしてテストしますが。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ