• ベストアンサー

windowsからtelnetでログインし自動処理

windowsからUNIXサーバーへtelnetでログインし その後、様々な処理を行い、ログアウトするまでの一連の操作をバッチファイル化したいのですが、上手くログインできません。 WINODWSで telnet.batというバッチファイルをダブルクリックするとその中の telnet open 192.168.1.1 user passwd cd usr cp a.tar b tar exit といった処理を実行させたいのですが、 TELNETを呼び出したまでは良かったのですが、 上手くログインできず止っています。 宜しくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • osamuy
  • ベストアンサー率42% (1231/2878)
回答No.3

TeraTermが、あんまり気に入らないとなると、 1) Expectを使う。 http://www-6.ibm.com/jp/developerworks/linux/020614/j_l-sc1.html 2) perlのNet::Telnetを使う。 man Net::Telnet 3) sshでパスワードなしの鍵を使って、コマンドを実行。 man ssh 4) CGI経由でコマンドをキック。 ――とか。 expect、sshはcygwinのものが、PerlはActivePerlが使えます。 sshはサーバー側でsshdが動いている必要があります。 CGIは、大抵、管理権限の無いユーザーで動いてますので、setuidする必要があるかも。

maiton
質問者

お礼

2)でできました。 ありがとうございました。

その他の回答 (2)

回答No.2

#1の方がおっしゃるとおり, 「TeraTerm PRO」がよいかと思います. UNIXユーザにとって「TeraTerm」は必需品です. いまや「TeraTerm」は世界標準ですよね. マクロファイルを作れば,バッチファイルを実行するような 感覚でマクロをダブルクリックで実行させることもできますよ. 上記バッチファイルを作るような感覚で マクロも作成できますよ. がんばってください.

  • crimson
  • ベストアンサー率40% (900/2202)
回答No.1

…であれば、「Tera Term PRO」とそのサポートソフト 「Tera Term Menu」を使ってみてはどうでしょう。 OS標準Telnetとバッチファイルより高度なマクロ処理 が可能になっています。

参考URL:
http://hp.vector.co.jp/authors/VA002416/,http://www.bb.wakwak.com/~shinpei/
maiton
質問者

補足

参考にしてみます。 ありがとうございます。 ただ、できれば完全にバッチファイルで実行できるような ものがあればとても助かります。

関連するQ&A

  • Telnetをログアウトしても処理を続けたい

    PC1(AIX UNIX)からPC2(Win2000 sp2)へtelnetでログインし、PC2上のバッチファイルを実行させようとしています。 一連の作業を自動化させたいため、PC1上のシェルスクリプトでバッチファイルを起動させているのですが、ログアウトするとバッチファイルのプロセスも切れてしまいます。 シェルスクリプトはsleepコマンドのため、自動的にexitがかかってしまい、長い処理や処理時間の読めないプログラムを走らせることができません。UNIX系のnohupのようなことをWindows上で行うことはできないのでしょうか? 色々と調べても情報がなかったので、あきらめかけてます。ご存じの方、またご経験のある方がいましたら教えて下さい。

  • telnetバッチによる処理の自動化

    Windows2000からLinuxへのtelnetによる処理を自動化したいのですが バッチファイルで解決するのは無理でしょうか? やりたいことは以下の部分です。 1、ログイン 2、ルートユーザ変更 3、コマンド実行 4、exit この処理のあとFTPバッチにて コマンド結果を取得したいと思っています。 (こちらは何とかなりました・・・) ネットワーク的に完全ローカルなのでセキュリティとかは気にしてません。 ただ、Tera Termとかをインストールできないため Windows標準コマンドを使うしかないのです。。。 どうにかなるでしょうか? よろしくお願いいたします。

  • 自動でtelnet

    お世話になります。 ボタンクリックすると自動でTelnetを起動しコマンドを投げてtelnetを終了する...処理を作っています。 telnet接続からの操作はvbsで作成、 そのvbsをbatfileで起動するようにしました。 古いパソコン環境で動かす(32bit)というので、あえてvc++6.0で作成し正常に、動きました。 それを64bitのWindows2012で動かしたら、vbsの中のtelnetの接続のところでエラーになります。  'telnet'は、内部コマンドまたは外部コマンド、  操作可能なプログラムまたはバッチファイルとして認識されていません と、なります。 telnet clientはinstallしてあり、 コマンドプロンプトでbatファイルをたたくとちゃんと正常に動きます。 batファイルをダブルクリックでも動きます。 コマンドプロンプトでcscript xxx.vbs  としても正しく動きます。 プログラムから CreateProcessで、「cmd xxx.bat」としているのですが。。。 どこが間違ってるのか、何がダメなのか判断が付かないのです。 至急アドバイスをいただけないでしょうか。 よろしくお願いいたします。

  • smtpサーバへtelnetログインし、対話形式でメールを送付するところを自動化したい

    「smtpサーバへ、telnetログイン(ポート指定:25)後、対話形式でメールを送付する。」 というのを自動化したいのですが、手動でコマンドを投入する分ではうまく行くのですが、Windowsのバッチファイル(.bat)で実行すると、ログインしたところで止まってしまいます。 どうすればうまくいくでしょうか?

  • telnetをスクリプトで実行する

    WindowsXPからルーターにtelnetでログインし、 ポリシーを変更する。といった操作を、バッチファイルを使用し、 自動化できないかと考えています。 telnetの自動ログイン、ルーターのコマンドの送信と いった処理はどのように書けばいいのでしょうか? バッチファイルと、ルーターの設定が書かれたtxtファイルで できればと思っています。 FTPの「-s:」のようなオプション等はないのでしょうか?

  • リモートログインとコマンド実行を自動処理できますか?

    やりたいことは、UNIX間のファイル転送で、 1.Cronで30分毎にSSHでリモートマシンへログイン 2.あるディレクトリにあるファイルをすべて取得 3.取得したファイルはすべて削除 の一連の処理を行いたいのですが どのような手法を使えばできるのでしょうか?

  • サーバー自動ログインソフトを作りたい

    バッチもしくはVBスクリプトでサーバーに自動ログインする ソフトを作ろうとしているのですが、うまくいきません。 具体的な環境は以下のとおりです。 サーバー    IP:10.10.2.1   ログイン名:login   パスワード:pass 現在、コマンドプロンプトから手動で  C:\>telnet 10.10.2.1 でログインし、ログイン名とパスワードを聞いてくるので、手動で ログイン名:login パスワード:pass と入力しているのですが、この作業を自動化したいです。 バッチファイルでtelnetコマンドを実行し、その後VBスクリプトを起動し、ログイン名とパスワードを送ろうと思ったのですが、 telnetコマンドはサーバーと接続しただけでは次のコマンドに命令権を渡さないようで、VBスクリプトが起動しないです。 バッチとVBスクリプト以外でもいいので、上記の一連の作業を自動化する方法がわかるという方、ご教授願います。

  • telnetの自動シェルバッチを作成したい

    UNIXは不得意のため、とても困っています。 是非、アドバイスをお願いします。m(_S_;)m えっと。windowsでいえば、ブラウザにURLを設定するようなことを UNIX上で、telnetを使って自動バッチを作成したいと思っています。 HTTP要求のURL: http:xx.xx.xx.xx:7001/TEST/test.srv?MODE=0 自分で書いてみたシェル ------------------------------------------------- sleep 2; echo ${USER_ID} sleep 1 echo ${PASSWORD} sleep 1 echo "GET /TEST/test.srv?MODE=0" sleep 1 echo "exit" | telnet ${SERVER_IP} ${WEB_POOT} ------------------------------------------------- 下記では、「ファイルもディレクトリもありません。」の エラーが出てしますます。。 でもブラウザより上記のURLを入れて実行するぶんには 正常にhtmlを返してくれます。(バッチではhtmlを返さなくても可) お手数をおかけしますが、どなたかもしアドバイス等が 御座いましたら、どうか宜しくお願い致します。

  • telnet でログイン出来ないユーザ

    昔使用していたLinux機を久々に起動し、新規のユーザを作成したところ そのユーザで、telnetでのログインが出来ません。 既存のユーザは問題なくログインできますし、既存でログインした後に su で新規作成のユーザに変更も出来ます。 また、コンソールからのログインは、新規ユーザでも可能です。 同じPCからですし、host.allow , host.deny 系の設定ファイルも 特別な設定のないことは確認しました。 以下、作業した手順です。 ・既存ユーザ[test1]でログイン ・su - root で rootに変更 ・useradd - test2 で、新規ユーザ[test2]を作成 ・passwd test2 を実行して、test2のパスワードを設定 →新規に telnet 接続でログインしようとすると失敗(Login incorrect) OSは、Linux release 2.4.9-e.9.30ml です。 どなたかわかる方いらっしゃいましたら、よろしくお願いいたします。

  • batファイルでtelnetを起動⇒文字コードをセット⇒ログイン としたいです。

    XPで、Red Hat Linuxサーバにtelnetログインをしています。 C:\WINDOWS\system32\telnet.exeのショートカットをデスクトップに作成し、 1.telnet.exeのショートカットをダブルクリック 2.set CODESET Japanese EUC を設定(文字化けを防ぐため) 3.open 192.168.xx.xx として、ログインしているのですが、batファイル化したいです。 login.batを作成し、  telnet 192.168.xx.xx  pause と二行だけ記入しておき、login.batをダブルクリックすると、  Red Hat Linux ...  Kernel ....  login: と表示され、ユーザー名とパスワードでログインできるのですが、 set CODESET Japanese EUC を設定してからログインするようにするやり方がわかりません。。 リダイレクトやパイプなども調べてみていろいろ試したのですが、できませんでした。 どなたがms-dosに詳しい方、ご教授お願いいたします。 ※後学のために、もし、ユーザー名、パスワードもbatファイルに含めることができるのでしたら、その方法も知りたいです。 ※イントラの閉鎖されたネットワークで座席fixでの研修作業なので、sshでないtelnetはやめようとか、batファイルにパスワードまで記述してしまうのは脆弱すぎるとかのご指摘は申し訳ありませんがご遠慮願います。 よろしくお願いいたします。