Presented by Nishishi via Movable Type. Last Updated: 2008/02/08. 23:15:55.

cronを使ってランダムな間隔でコマンドを自動実行する

私のウェブサイトを運用してるサーバのOSはFreeBSDです。cronを使うと指定したコマンドを指定日時に自動的に実行させることができます。日時の指定は、月・日・時・分・曜日で指定可能で、例えば、毎週月曜日の午前5時に実行…みたいな指定ができます。

でも、ランダムな時間間隔で特定のコマンドを自動的に実行させたい場合、cronの設定では無理なんですよね。なんとかならんかなーと考えてて、1つ案を思いつきました。

cronによって自動実行されるプログラムが、自身の本来の処理を終えた後に、自分自身を次に自動起動させるためのcron設定を行えばいいんじゃないかと。

それなら、次に起動されたい日時を計算して(ランダムな間隔を生成して)cronの設定を行えば、ユーザが何もすることなくランダムな間隔で自動実行できるんじゃないかな…と。

まあ、思っただけで実験はまだしてないんですけど。^^;

この日記へのコメントはお気軽に! コメント数:2 トラックバック数:0

コメント

同じことを考えてて、なんとなく検索してたどり着きました。

私の場合はランダムな時間スリープしてからコマンドを実行するようにしています。

投稿者 syu : 2006年05月02日 12:15

syuさん、どうもです。

スリープさせるという手も考えたのですが、余計なプロセスがずっと存在してることになるのがちょっと気になるかな…と思いまして。共用のレンタルサーバですし。^^;
その辺はどうなんでしょうね?

投稿者 にしし : 2006年05月02日 13:54

コメント数: 2件

コメント投稿欄 この日記に対するコメント投稿を歓迎します。

保存しますか?



※本文中にURLは書けません。(書くと投稿が拒否されますのでご注意下さい。)

投稿後、投稿できていないように見えることがあります。ブラウザのキャッシュが読まれているだけですので、ページを再読込すれば(=たいてい[F5]キーを押せば)投稿内容が反映されていることが確認できるはずです。連続投稿を試す前にご確認下さい。(^^;)

トラックバック

このエントリーへのトラックバックURLを表示するにはここをクリック
※スパム防止のため、トラックバックURLは別ウインドウで表示します。(JavaScriptが有効でないと表示されません。)