- ベストアンサー
smtpサーバへtelnetログインし、対話形式でメールを送付するところを自動化したい
「smtpサーバへ、telnetログイン(ポート指定:25)後、対話形式でメールを送付する。」 というのを自動化したいのですが、手動でコマンドを投入する分ではうまく行くのですが、Windowsのバッチファイル(.bat)で実行すると、ログインしたところで止まってしまいます。 どうすればうまくいくでしょうか?
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
とりあえず、teratermで「手動でコマンドを投入」と同じことをやれば、うまくいくはずですがそれは大丈夫でしょうか。 teratermの設定で注意するのは、 改行コード=CR+LF、漢字コード=JIS、ローカルエコー=オン ぐらいだと思います。 手動でやって問題なければ、マクロを書いて自動化しましょう。
その他の回答 (3)
- rinkun
- ベストアンサー率44% (706/1571)
> すいません。追加質問になってしまいますが、teratermマクロでも無理ですか? teratermはよく知らないけど自動実行マクロならかなりのことができるでしょう。 昔のパソコン通信なんかは自動巡回するものでしたし。
お礼
ご回答ありがとうございました。
- notnot
- ベストアンサー率47% (4900/10358)
>teratermマクロでも無理ですか? 出来ます。
お礼
ご回答ありがとうございます。 > 出来ます 私がteratermマクロで試したところ、smtpサーバへログインしてみましたが、制御できませんでした。 ********************************************** telnet [smtpサーバのアドレス] 25 ~~~~~~smtpサーバからの応答~~~~~~ ********************************************** 上記の後はキーボードからの入力も受付ない状態になりました。 何か制御コードの変更とか必要なのでしょうか?
- rinkun
- ベストアンサー率44% (706/1571)
対話の自動化はバッチファイルじゃ無理。 expectのような自動化プログラムで行う。 http://www.linux.or.jp/JM/html/expect/man1/expect.1.html Windows版もあるはずなので探してみては。
お礼
ありがとうございます。 expectを勉強してみます。
補足
すいません。追加質問になってしまいますが、teratermマクロでも無理ですか?
お礼
> ローカルエコー=オン これがオフになっていたのが原因のようでした。 オンにしたらできました。 ありがとうございました。