システムのディスク使用状況をキャプチャするスクリプトを作成しています (そうです、これを実行できるソフトウェアがあることは知っています)。データベースのレポート作成のために、データ ポイント間の間隔をできるだけ等しくしたいと考えています。たとえば、ディスクの使用状況を 10 分ごとにポーリングしている場合、すべてのデータ ポイントを YYYY-MM-DD HH:[0-5]0:00 にします。5 分ごとにポーリングしている場合、YYYY-MM-DD HH:[0-5][05]:00 になります。
ディスクの使用状況をキャプチャするための ksh スクリプト (または Perl スクリプト) がある場合、スクリプトをアクティブにして次の「ポーリング時間」を待ってからスナップショットを作成し、正しい秒数だけスリープさせるにはどうすればよいですか?次の「投票時間」まで。5 分ごとにポーリングしていて、11:42:00 である場合、180 秒間スリープして 11:45:00 にスナップショットを作成し、5 分間スリープして別のスナップショットを作成します。 11:50:00。
ポーリング時間が 10 分ごとの場合に機能する方法を書きましたが、ポーリング時間を別の数値に変更すると機能しません。投票時間に柔軟に対応してほしい。
私はこれをシェル スクリプトで行うことを好みますが、コードが多すぎる場合は、Perl でも問題ありません。
これを達成する方法についてのアイデアはありますか?
前もって感謝します!
ブライアン
編集:うわー-かなり重要な部分を省略しました-cronが無効になっているため、このタスクにcronを使用できません。そうです、cronを使用できれば、それが私が望んでいたことを行うのに最適な方法だからです。
スケジューラを使用して、毎日真夜中の直前にスクリプトを開始し、スクリプトが正確な「ポーリング時間」で実行され、その間にスリープし、真夜中に終了するようにします。
繰り返しになりますが、crontabs について明確に説明していないことを非常に残念に思います。