• ベストアンサー

Windowsのrubyで強制終了させない方法

表題の通りで、Windowsのrubyでコマンドプロンプト から簡単なプログラムを書いて、 最後に勝手に閉じてしまうと思うのですが、 標準入力を待つ、又は何か入力が有れば終了させるのは、 どう書いたら良いのでしょうか? 初歩的な質問で申し訳ありません。 perlだと、 <>; exit; でOKと思いますが、 rubyの場合は??宜しくお願い致します。

  • Ruby
  • 回答数1
  • ありがとう数1

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

  • ベストアンサー
回答No.1

入力待ちの状態にしたいのであれば gets これでいけますよ。

1yoshi
質問者

お礼

有難う御座います!助かりました。

関連するQ&A

  • Rubyの起動がうまくできません

    http://www.ruby-lang.org/ja/ ここを見て色々やっています。 全くの初心者でとまどっております。 ちなみにコマンドプロンプトでruby -vを入力するとrubyがインストールされているコマンドが出るのですが、rubyが起動しません。 色々やってしまっているので、出来れば最初からやり直したいとも思っております。 宜しくお願い申し上げます

  • Ruby の実行について

    Ruby初心者です。 メモ帳で puts "hello world"と打ち、名前をsample.rbにし、c:\Users\rbというファイルに保存しました。次にコマンドプロンプトで c:\Users\rb>ruby sample.rb と入力したんですが、'ruby'は、内部コマンドまたは外部コマンド、操作可能なプログラムまたはバッチ ファイルとして認識されていません。といわれました。 どうすればいいのですか? 本を見てもネット上のサイトをみても >ruby ●●.rb なんです。

    • ベストアンサー
    • Ruby
  • あるキーを押したら強制終了させるには。

    Cの初心者です。 ある文字列をスクロールさせるプログラムを作りました。 ソースは以下です。 *********************************************** #include<stdio.h> #include<string.h> void wait(long x) { int i; for(i=0;i<x;i++){/* do nothing */} } int main(void) { char name[]="Hello OK Wave"; int i; int len=strlen(name); int time=0; while(1){ printf("\r"); for(i=0;i<=len;i++){ if(time+i<=len){ printf("%c",name[time+i]); } else { printf("%c",name[time+i-len-1]); } } time++; if(time>len){time=0;} wait(1000000000); } return(0); } ********************************************* (ちなみにコンパイル時最後のリターン文が実行されないという警告が出ます) 一応これで目的の動作はしてくれるのですが、 これですとwhile(1)の中を延々と続けているのでプログラムを終了させるために いちいちコマンドプロンプトごと終了させなければいけません。 (ちなみにコマンドプロンプト自体のコマンドはよくわからないです) これですとなんだか嫌な感じなので、あるキー、たとえば'Q'を押したら プログラムが終了してくれるようなことが出来ないだろうかと思っています。 exit(1)を使うのかな?と思いましたがどのようにキーを押したかの判定などを すればよいのか悩んでいます。 どうかよろしくお願いいたします。

  • RubyとMeadow(Emacs)について

    RubyとMeadow(Emacs)について 自分のパソコンにRubyとMeadowをインストールしたんですが、 Meadowでソースプログラムを作ってからコマンドプロンプトでそれを実行しようとすると ’ruby’は、内部コマンドまたは外部コマンド、 操作可能なプログラムまたはバッチ ファイルとして認識されていません。 と出てきてしまいます。 どうすれば実行できるのでしょうか? 教えていただきたいです。 ちなみにこれは夏休みの宿題で、 プリントに書かれていたとおりにやりました。 間違いがないか自分でなんども確認しましたが、 たぶん書いてあることは間違っていないと思います。 どのようにやったかというと、 Meadowでhello.rbというファイルに print("Hello, Ruby World !\n") と打ち込み、c:\progIに保存。 コマンドプロンプトを開いて progIに移動し、 ruby hello.rb →[Enter] です。

    • ベストアンサー
    • Ruby
  • Ruby vim 実行の仕方

    Rubyをvimで書いたので、実行しようとしたのですが、実行できないです。何がダメなのでしょうか? 手順としては、 vimで puts("Hello World!")と書きました。 w hello_ruby.rbと書いて保存しました。 コマンドプロンプトを開いて、hello_ruby.rbと入れて、Enterを押したのですが、 ’hello_ruby.rb’は、内部コマンドまたは外部コマンド、操作可能なプログラムまたはバッチ ファイルとして認識されていません。 と出ます。 コマンドプロンプトで、ruby -v と入れると、Rubyのバージョンは出てきます。 何がいけないのでしょうか?修正の仕方を教えてください。 詳しい方いらっしゃいましたら、よろしくお願い致します。

    • ベストアンサー
    • Ruby
  • WinXPのコマンドプロンプトの強制終了

    WinXP(2台)でコマンドプロンプトからFTPを実行します。 FPTサーバーが見つからないなどFTPがタイムアウトを 待っている状態でコマンドプロンプトの右上の「×」を クリックすると何も言わないでコマンドプロンプトが 終了するパソコンと、 「プログラムの終了-C:\Windows\System32\cmd.exe  このプログラムを終了できません。操作の完了に  ・・・・  「すぐに終了」 「キャンセル」」 のメッセージボックスを表示するパソコンがあります。 (前者のように)このメッセージを表示しないで終了させたいのですが どうやったらよいのでしょうか?

  • Ruby初心者です。

    Ruby初心者です。 Rubyから違うファイルを実行する場合について教えてください。 例えば、test.batに echo off echo. SET /p INPUT="Input string =>" echo %INPUT% pause のように記述されており これをRubyから実行し、 入力もRubyからするにはどうしたら良いでしょうか? つまり、Rubyからtest.batを実行し、自動で入力も行いたいです。 echoの内容もコマンドプロンプトから確認したいです。 また、RubyからBuildコマンドを実行したいと思います。 Buildは別プロセスで動いている状態になっていると思いますが、 Build中はRubyはどのような状態になるでしょうか? RubyからBuildした場合、Build動作が重くなることを懸念しています 有識者の方、よろしくお願いします。

    • ベストアンサー
    • Ruby
  • Rubyスクリプトから他のプログラムを起動する方法について教えてください

    Rubyスクリプトから他のコマンド, プログラムを起動するのに、system()やexec()を使用していますが、これらの組み込み関数だと、起動したプログラムが終了するまでRubyスクリプトに戻ってきません。 外部プログラムを起動した後、すぐにRubyスクリプトに戻るようにするにはどうすればよいでしょうか? よろしくお願いします。

  • MS-DOSの終了

    Perlを勉強中、以下(注1)の内容をhello.plに記述して MS-DOSでperl hello.plとタイプしました。そしたらC:\Perl>が 消えて、左端にカーソルが点滅するだけになってしまいした。 MS-DOSの右上にある x ボタンを押して終了しようとすると、 以下(注2)のダイアログが、出てしまいます。 EXITと入力しても、下の行にEXITと表示されるだけで終了できません。 また、タイトルバーがPERLになっているのはなぜなんでしょう? ご存知の方いましたら、お願いします。 Windows 98 IE 5.5 SHARP Mebius MJ-10 注1 for ($i = 0; $i <= $#ARGV; $i++) { open(IN, $ARGV[$i]); while (<IN>) { print; } close(IN); } 注2 PERL このプログラムを自動的にシャットダウンすることはできません。 プログラムの終了コマンドを使ってください。 プログラムで頻繁にエラーが発生する場合は、[スタート]メニューの[ヘルプ]を選び、 トラブルシューティングの「MS-DOSに関する問題」を参照してください。

  • コンソールウインドウの[×]ボタンで閉じる

    コマンドプロンプトやPuTTYで作業しているときに、ついウインドウの[×]ボタンで閉じてしまう事があります。でもなんだか、exitコマンドで終了する方が、安全に終了できる気がします。(根拠はありませんが個人的なイメージです) 質問1 (exitコマンドで終了できる状態のとき) 「exitコマンドで終了する」のと「ウインドウの[×]ボタンで閉じる」は結果は常に同じでしょうか?結果に差が発生する事はあるのでしょうか? 質問2 (exitコマンドで終了できない状態のとき) 『実行中のプログラムやコマンドを「Ctrl+C]等で停止した後、exitコマンドで終了する』のと「ウインドウの[×]ボタンで閉じる」は結果は常に同じでしょうか?結果に差が発生する事はあるのでしょうか? よろしくお願いします。

専門家に質問してみよう