- ベストアンサー
Linuxで、10分だけ、アプリを起動させるには?
Linux(ubuntu)には、Winのタスクみたいなものってありますか? 自作アプリなんですが、OS側で、定時に、10分だけ、動かしたいのですが。 定時は、Cronとかを使うんですよね? それは分かるんですが、10分というのが分からなくって。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
素数を求めるプログラムということですが 起動毎に毎回最初から計算するようなものであるなら単純にkillでいいですけど 次回起動時に計算を継続させたいのでしたら、 その仕組みをプログラムに組み込んでおく必要がありますよ。
その他の回答 (2)
- notnot
- ベストアンサー率47% (4900/10358)
「10分だけ動かしたい」というのは具体的にどういうことですか? 手動で終了させない限り無限に動き続けるアプリを、起動後10分後に終了させたい ということなら、 #!/bin/sh application & PID=$! sleep 600 kill $PID というスクリプトをcronから動かせば良いです。
お礼
でも、そういう方法もあるんですね、少し調べてみたいと思います。 ありがとうございました。
補足
具体的には、素数を探し続けるプログラムを作ったので、それを毎日10分間だけ続けたいなー、と。 その間は、私はPCには触りませんし、近くにもいない状態です。 なので、完全に毎朝、自動で10分間だけ動かしたいのですが。 プロセスを切るのは、知っているのですが、どうやって起動したアプリのプロセスを取得するのかなー?と。
- ttoo1932
- ベストアンサー率0% (0/1)
はじめまして。 思ったことを書ききまね。 シェルでもperlでもスクリプトを書いて、そのスクリプトをcronで回せばよいのではないでしょうか。 単純に一つのスクリプトの中で、自作アプリを起動 → 10分wait → 自作アプリの停止 といった流れで書いてみてはどうでしょう? 自作アプリがどういった形で起動、停止をするものかは分かりませんが、停止はpsコマンドでプロセスを監視し、停止する形を取れば期待通り停止もできますし。 自作アプリとのことですので、そこまでいろんなことを意識しなくても良いと思ったので、最も単純な方法をイメージしてみました。 頑張ってください。
お礼
あー、Winのタスクだと、時間終了の際、アプリの終了時に、データ保存とかできたのですが、LinuxのKillだと、その暇もないのかな? Killだと、にべもなくばっさりって気もするしなー。 Winの強制終了っぽいのかな? もう少し調べてみますわ。 ありがとうございました。