[Subject Prev][Subject Next][Thread Prev][Thread Next][Subject Index][Thread Index]

[linux-users:72057] Re: 受信メールを自動的に読む方法


さかいです.

<200008011414.AA01344 _at_ jiro.pluto.dti.ne.jp>の記事において
catmoon _at_ pluto.dti.ne.jpさんは書きました。

>> sendmailを使用していて、メールを受信したら自前のプログラムで
>> メールの中身を読みたいと思っています。

>> /etc/aliasか.forwardファイルで
>> | "プログラム名"
>> という書き方をすればメールをプログラムに渡せるらしい、と

メールのテキスト文字列がそのままプログラムの標準入力に流しこまれます.

>> 分かったのですが、いまいちどのようなしくみで、プログラムに
>> 対してメールが転送されるのかがよく分かりません。
>> 
>> この自前のプログラムはどのような形でメールを受信するのでしょうか?

転送とか受信するのではなく,パイプで標準入力に流し込まれるだけです.

>> メールをプログラム内で読むためにはどのようにすれば
>> よろしいのでしょうか?

たとえば,.forward に,

"| cat > a.txt"

などとしておけば,メールを受信したときに,a.txt というファイルに
メールがコピーされます.

いちばん簡単なのは,

"| xmessage -file -"

のようにしておけば,メールがきたらそのままウインドウが開いて表示されます.
(xmessage では日本語はおそらく出ませんけど)

.forward には複数のエントリを記述できるので,

"| cat > a.txt"
"| xmessage -file -"

なんてこともできます.

Perl と組み合わせると,いろいろおもしろいことができますね.
# メールを送ると大阪弁に変換して,返信してくれるとか.



この情報があなたの探していたものかどうか選択してください。
yes/まさにこれだ!   no/違うなぁ   part/一部見つかった   try/これで試してみる

あなたが探していた情報はどのようなことか、ご自由に記入下さい。特に「まさにこれだ!」と言う場合は記入をお願いします。
例:「複数のマシンからCATV経由でipmasqueradeを利用してWebを参照したい場合の設定について」
Follow-Ups: References: