- 締切済み
rubyでプログラムを作っていますがうまくいきません。
rubyでプログラムを作っています。 予想通りの動きができないです。 常駐ソフトを起動したり終了したりするプログラムをrubyで作りたいと思っています。 バッチファイルで作れば問題ないのですが、今回のプログラムを他で作っているrubyのプログラムに使いたいからrubyで作りたいんです。 そこでとりあえずrubyでソフトを起動したり終了したりする小さいプログラムを作って試しています。 ですが全然ひらめかないのでぜひご教授をお願いします。 利用環境 Windows XP Home Edition Cygwinをインストールしrubyを実行しています。
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- notnot
- ベストアンサー率47% (4900/10358)
rubyから起動するというプログラムfolders.exeが、cygwin環境でなくwin32環境で動くプログラムだとすると、 system('taskkill /IM folders.exe') cygwin環境で動くプログラムなら、cygwinのps.exeとgrep.exeとkill.exeを使って、 a=`ps | grep folders` とかしてaを見てsplitメソッドなどを使ってプロセス番号を調べてsystem("kill 番号")で終了させます。cygwinは使ってないので具体的には書けませんが。
- asuncion
- ベストアンサー率33% (2127/6289)
> rubyでソフトを起動したり終了したりする小さいプログラムを作って試しています。 これが予想どおりに動いてくれないのですね。 どんなスクリプトを書かれていますか?
- sakusaker7
- ベストアンサー率62% (800/1280)
もうちょっとやりたいことを具体的に書いてもらえませんか。 > そこでとりあえずrubyでソフトを起動したり終了したりする小さいプログラムを作って試しています。 これはできているのですよね? >バッチファイルで作れば問題ないのですが、 バッチファイルだとどういう感じになるのか そのバッチファイルを見せてもらえませんか? > rubyでプログラムを作っています。 > 予想通りの動きができないです。 そんなにでかいものでないのなら、 ・こういうことがしたいです ・Rubyでこう書きました ・こう動いてほしいのですが実際にはこう動いてしまいます というのを明確にしたほうがアドバイスを貰いやすいと思いますよ。
補足
rubyでソフトを起動したり終了したりするプログラムを作りたいです。 バッチファイルの場合 cd "C:\cygwin\folders500" start folders.exe これでフォルダ監視というソフトを起動することが確認できました。 しかし終了するプログラムはわかりません。 rubyの場合 system 'C:/cygwin/folders500/folders.exe' これでフォルダ監視というソフトを起動できることが確認できました。 しかしこのソフトを終了するプログラムがわかりません。 質問がおおざっぱすぎて申し訳ないです。 とりあえず起動はできたので終了をすることができるプログラムを教えていただけるとさいわいです。
補足
rubyでは今とりあえずこの1行しか書いていません system 'C:/cygwin/folders500/folders.exe' これでフォルダ監視(自分がよく使うソフト)というソフトが起動できます。 しかし起動はできたのですが終了はどういうふうに書けばいいかわかりません。 終了をしてくれるようなコマンドがありますでしょうか?