
#!/bin/sh
HP-UXでシェルスクリプトを正確な時間(hh:mm:ss)で実行しようとしています。 hh:05:00 .. hh:10:00 .. hh:15:00 .. hh:20 :00 .. hh:25:00 など。を使用してこれを行うことができることを知っていますが、cron
他の方法を探しています。
追加:視聴/繰り返しをサポートしていません。
答え1
次のことができます。
sleep $(($(date --date="14-JAN-2015 17:00" +%s) - $(date +%s)))
run command ...
14-JAN-2015 17:00
待ちたい日時はどこにありますか?
5分ごとに実行するには、返された秒数がdate
5分の境界で300の倍数になると思います。したがって、現在と次の5分の境界との間の差(0から299の間の戻り値)が計算されます。 ):
timeNow=$(date +%s)
sleepTime=$(( ( ( $timeNow + 299) / 300 * 300 ) - $timeNow ))
sleep $sleepTime
date +%s
利用できない場合は、以下を試してください。
timeNow=$(awk 'END { print systime() }' /dev/null)
追加: また、次のようになります:
perl -e 'print time(), "\n" '