web-dev-qa-db-ja.com

Procmailがシェルコマンドを実行しない

特定の件名のメールを受信したときにスクリプトを起動する必要があります。fetchmail+ procmailを試しました。これが私の設定です。

。fetchmailrc

set no bouncemail
defaults:
  antispam -1 
  batchlimit 100
poll imap.googlemail.com protocol IMAP auth password
user "[email protected]" is root here
password 'xxxxx'
ssl
mda "/usr/bin/procmail -f %F -d %T";

。procmailrc

PATH=/bin:/usr/bin:/usr/local/bin:$HOME/bin:/usr/sbin
MAILDIR=/var/mail
LOGFILE=/var/log/procmail.log

:0
* ^Subject: "Test OK"
| echo "Test" >> /var/log/test.log

件名がTest OKのメールを送信すると、procmailログに次の行が表示されます。

From [email protected]  Sat Dec  8 18:41:16 2018
 Subject: Test OK
  Folder: /var/mail/root                             5304

しかし、echoを実行しないでください、何かアイデアはありますか?ありがとう

1
hellb0y77

ログメッセージのSubject行には、二重引用符がありません。したがって、正規表現が一致しませんでした。

より良いテストは、おそらくメッセージ全体を特定のフォルダに保存することです。

おそらくまた参照してください Procmail degugging Tips

1
tripleee