• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Rubyを使ってtelnetで実行したコマンドの標準出力を取得したいのですが…)

Rubyを使ってtelnetで実行したコマンドの標準出力を取得する方法

このQ&Aのポイント
  • Rubyを使用してtelnetで実行したコマンドの標準出力を取得する方法を教えてください。
  • 具体的には、Telnetでサーバにログインし、ifconfigコマンドを実行して、その結果をファイルに記録したいです。
  • 現在のプログラムでは結果をファイルに記録できていないため、解決策を教えていただけると助かります。

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

  • ベストアンサー
  • sakusaker7
  • ベストアンサー率62% (800/1280)
回答No.1

Net::Telnet newするときに、ログファイルを指定するのでは 何か具合が悪いですか? Net::Telnet http://kansai.anesth.or.jp/gijutu/ruby/man-z1/refm0168.html Output_log => nil # 出力ファイル名 Dump_log => nil # 出力ファイル名

ginnyannma
質問者

お礼

ありがとうございました!解決しました。 ログファイルを指定できたのですね。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • 標準出力と標準エラー出力を時系列にファイルへ

    例として、perlなどで、(test.plとします)  print "stdout1\n";  print STDERR "STDERR1\n";  print "stdout2\n";  print STDERR "STDERR2\n";  print "stdout3\n";  print STDERR "STDERR3\n"; このように、標準出力と、標準エラー出力が混在した状態の処理があった場合、 コマンドプロンプト(Windows2000)にて、 C:\>test.pl とすると、 stdout1 STDERR1 stdout2 STDERR2 stdout3 STDERR3 のように時系列に出力されますが、これをログファイルに取ろうとして、 C:\>test.pl 1>log.txt 2>&1 とすると、 C:\>cat log.txt STDERR1 STDERR2 STDERR3 stdout1 stdout2 stdout3 のように、標準エラー出力が先に吐き出されてしまいます。 これを画面出力時と同様に時系列で取れるようにしたいのですが、どのようにすれば良いでしょうか? 単純なことで困っています。よろしくお願いします。

  • 標準出力、標準エラー出力 以外の出力??

    Linux上のCADツールが端末に出力してくる文字列をファイルに落とすことができないで困っています。 どのようなことが起きているのでしょうか? また、このような場合、どのようにしたら端末上に流れる文字をすべてファイルとして保存できるのでしょうか。 %> CAD_TOOL.exe |& tee log として標準出力、標準エラー出力の両方をlogというファイルにおとしたつもりなのですが、画面に流れたすべての文字列が保存されている訳ではないのです。 Linuxの出力には標準出力と標準エラー出力の2つ(だけ)がある[*]、と思っていましたが他の出力方法があったりするのでしょうか。。。 [*]http://x68000.q-e-d.net/~68user/unix/pickup?%A5%EA%A5%C0%A5%A4%A5%EC%A5%AF%A5%C8 宜しくお願いします。

  • PHP5の外部コマンド実行で、バッチファイルのエラーレベル値と標準出力(標準エラー?)の3つを取得できる関数はありますか?

    PHP5のWindows版を使っています。 外部コマンドを実行して、Windowsのバッチファイルのエラーレベル値と標準出力(標準エラー?)の3つを取得できる関数はありますか? test.cmdの中味 echo 標準出力内容です。 echo バッチファイルで標準エラー出力はわかりませんが exit /b 2 list ($ret, $stdout, $stderr) = 何か関数("test.cmd") echo $ret; // 2 echo $stdout; // 標準出力内容です。\nバッチファイルで標準エラー出力はわかりませんが echo $stderr; // ???? よろしくお願い致します。

    • ベストアンサー
    • PHP
  • 処理結果(標準出力と標準エラー出力)をファイルと画面の両方に出力する方

    処理結果(標準出力と標準エラー出力)をファイルと画面の両方に出力する方法はありますか? 当方 処理結果(標準出力と標準エラー出力)をファイルに出力する際に iroirona_command > log.log 1>&2 ・・・ファイルに出力されるが画面には表示されない。 iroirona_command ・・・画面には表示されるがファイルには出力されない。 と書いて標準出力と標準エラー出力を出力させているのですが、 ファイルと画面の2つの出力先に出力したいと考えています。 可能なのでしょうか? 環境 Windows XP SP3

  • ttlコマンドでのtelnet接続について

    teratermのマクロ機能を使用してtelnet接続の自動化をしたいと考えています。 いろいろなサイトを見て ****************************************** HOSTADDR = '接続先IPアドレス' USERNAME = 'ユーザ名' PASSWORD = 'パスワード' COMMAND = HOSTADDR strconcat COMMAND ':23 /nossh /T=1' connect COMMAND wait 'login:' sendln USERNAME wait 'Password:' sendln PASSWORD end ****************************************** でできることができたのですが、使用者にアカウント名、パスワード名を知られたくありません。 【やりたいこと】 (1) 1. ttlファイルを実行する 2. 接続先のIPアドレスを入力する 3. 自動でtelnet接続する。 (2) 上記に加えて使用者にttlファイルの中身を参照されたときにアカウント、パスワードがわからないようにする。 ⇒暗号化されたファイルを読み込むようにする? (1)-2についても実装できていません。 アドバイスをお願いします。

  • 標準出力とリダイレクトを同時に実行

    標準出力の結果をファイルに保存するにはリダイレクトを使うと思いますが、同時に標準出力にも表示したいです。 同時に、リダイレクトの「>>」のように、追記していくようにしたいです。 そのような場合、 http://blog.goo.ne.jp/minimal_room/e/26b4d965cd67ac5abfc4ca024e69501f によれば、teeコマンドを使うと良いそうなのですが、 ./a.out | tee log.txt のようにすると、標準出力されず、上手くいきませんでした。 どのようなコマンドを打ったら良いか教えて下さい。

  • teeコマンドを使わずにUNIXで標準出力とエラー出力を、ファイルと標準出力の両方に出すには?

    UNIX系のBシェルで、 コマンドを実行して、 その標準出力とエラー出力をログファイルに出力し、 かつ、同じものを標準出力にも出力したいのです。 また、その後でコマンドの戻り値$?をエラーチェックしたいです。 このため、パイプでteeコマンドを使用すると戻り値が上書きされてしまいます。 いったん一時ファイルに出力するしかないのでしょうか?

  • 標準出力と標準エラー出力を変数にセットしたいです。

    始めたばかりの初心者の為、変な質問でしたら申し訳ありません。 標準出力と標準出力を別々の変数にセットしたいのですが、そのやり方が分からず困っています。 やりたいことは、 コマンド(diffやcatなどの)実行結果の標準出力と標準エラー出力を それぞれ「任意の文字_受取パラメータの値」にセットすることをしたいです。 下記は、1回ファイルに出力して、それを読んで変数にセットするように記述したものです。 ※記述間違っていたらすみません。 ファイルに書かなくても、パイプやその他コマンドなどで出来る方法はないでしょうか? ex) test.sh 1.txt 2.txt TEST01 で実行 #!/bin/sh parm1 = $1 parm2 = $2 parm3 = $3 diff "${parm1}" "${parm2}" > test.log 2> err.log eval w_stdout_${parm3}=¥`cat test.log¥` eval w_stderr_${parm3}=¥`cat err.log¥` eval echo "stdout:¥"¥{w_stdout_${parm3}}¥"" eval echo "stderr:¥"¥{w_stderr_${parm3}}¥"" ※実行した結果 stdout:diff結果 stderr:空白 お手数ですが、何卒宜しくお願い致します。

  • 標準出力/標準エラー出力を時系列にファイルへ

    画面への文字出力が、標準出力(stdout)と標準エラー出力(stderr)の 両方もつような、コンソールアプリ(exe形式)のツールを動作させたときに、 画面上には、 stdout1 STDERR1 stdout2 STDERR2 stdout3 STDERR3 のような順番で処理順にメッセージが出るのですが、 これをファイルに落とそうとして、  C:\>hoge.exe 1> log.txt 2>1& とすると、log.txtの中身が、 C:\>type log.txt STDERR1 STDERR2 STDERR3 stdout1 stdout2 stdout3 のような標準エラー出力が先に吐き出される順番になってしまっています。 これを、exe実行前に、MS-DOSとして何らかの設定を行うことで、 ファイルに落とした時も、出力された文字が時系列に保存されるように する方法はあるでしょうか? よろしくお願いします。

  • 標準出力とログファイルへの書き出し

    初歩的な質問ですみません。 以下のようにするとログファイルにechoの内容が出力 されますが、標準出力には出力されないようになります。 echo "log" >> test.log 標準出力とログファイル両方に出力したい場合はどのように記述 すればよいでしょうか?

このQ&Aのポイント
  • 過去に2年間お付き合いをした元カレとの思い出。初めての彼氏であり、優しい人だった。しかし海外移住のため別れた。4年半経った今でも連絡を取り合っているが、彼は現在新しい彼女がいる。復縁したい気持ちはあるが、自分と彼の現状を考えると難しい。恋愛だけが全てではないと悟った涙もある。
  • 彼は30代で結婚願望がなく、現在彼女が家に住んでいる。将来のことはわからないが、彼が結婚すると悲しい。自分の気持ちに迷いながらも、何をすべきかわからない。
  • 男性は元カノとの繋がりを望むことがあるのか、結婚したら忘れるのか。5年以上経って復縁の可能性はあるのか。将来を考えて後悔しない選択をするためには、自分自身を見つめ直し、今すべきことを考える必要がある。同じような経験のある人の意見を聞きたい。
回答を見る

専門家に質問してみよう