• 締切済み

rubyでプログラムを作っていますがうまくいきません。

rubyでプログラムを作っています。 予想通りの動きができないです。 常駐ソフトを起動したり終了したりするプログラムをrubyで作りたいと思っています。 バッチファイルで作れば問題ないのですが、今回のプログラムを他で作っているrubyのプログラムに使いたいからrubyで作りたいんです。 そこでとりあえずrubyでソフトを起動したり終了したりする小さいプログラムを作って試しています。 ですが全然ひらめかないのでぜひご教授をお願いします。 利用環境 Windows XP Home Edition Cygwinをインストールしrubyを実行しています。

みんなの回答

  • notnot
  • ベストアンサー率47% (4900/10358)
回答No.3

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)
回答No.2

> rubyでソフトを起動したり終了したりする小さいプログラムを作って試しています。 これが予想どおりに動いてくれないのですね。 どんなスクリプトを書かれていますか?

koujing
質問者

補足

rubyでは今とりあえずこの1行しか書いていません system 'C:/cygwin/folders500/folders.exe' これでフォルダ監視(自分がよく使うソフト)というソフトが起動できます。 しかし起動はできたのですが終了はどういうふうに書けばいいかわかりません。 終了をしてくれるようなコマンドがありますでしょうか?

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

もうちょっとやりたいことを具体的に書いてもらえませんか。 > そこでとりあえずrubyでソフトを起動したり終了したりする小さいプログラムを作って試しています。 これはできているのですよね? >バッチファイルで作れば問題ないのですが、 バッチファイルだとどういう感じになるのか そのバッチファイルを見せてもらえませんか? > rubyでプログラムを作っています。 > 予想通りの動きができないです。 そんなにでかいものでないのなら、 ・こういうことがしたいです ・Rubyでこう書きました ・こう動いてほしいのですが実際にはこう動いてしまいます というのを明確にしたほうがアドバイスを貰いやすいと思いますよ。

koujing
質問者

補足

rubyでソフトを起動したり終了したりするプログラムを作りたいです。 バッチファイルの場合 cd "C:\cygwin\folders500" start folders.exe これでフォルダ監視というソフトを起動することが確認できました。 しかし終了するプログラムはわかりません。 rubyの場合 system 'C:/cygwin/folders500/folders.exe' これでフォルダ監視というソフトを起動できることが確認できました。 しかしこのソフトを終了するプログラムがわかりません。 質問がおおざっぱすぎて申し訳ないです。 とりあえず起動はできたので終了をすることができるプログラムを教えていただけるとさいわいです。

関連するQ&A