procmailを介してコピーされた電子メールのファイル名をどのようにインポートしてスクリプトに渡しますか?

procmailを介してコピーされた電子メールのファイル名をどのようにインポートしてスクリプトに渡しますか?

電子メールが私のサーバーに届いたら、スクリプトを実行してファイル名を渡そうとします。最初の部分が完了しました。 procmail はメールが届くたびにスクリプトを実行します。スクリプトを実行する前に、電子メールを特定のディレクトリにコピーしてください。

:0c
procmail-dir/
:0 fw
| /usr/bin/python3 /home/user/script.py

procmail-dirに保存した電子メールのファイル名/パスをどのようにインポートしてscript.pyに渡しますか?

答え1

この変数LASTFOLDERには、最近のメッセージ配信が発生したファイル名が含まれます。子プロセスとしてエクスポートされるため、Pythonを使用してPythonからアクセスできますos.environ['LASTFOLDER']。あるいは、もちろん、次のようなものを使用してコマンドライン引数として渡すこともできます。

:0fw
| python3 /path/to/script.py "$LASTFOLDER"

Pythonはまだ標準入力でメッセージを受け取るので、ファイル名を渡す必要があるかもしれません。 (また、毎回明示的に位置を綴るPATH必要がないように設定してください。)python3

関連情報