1. ホーム
  2. cron

[解決済み】N分+オフセットごとにCronジョブを実行する

2022-03-30 06:54:43

質問

*/20 * * * *

20分ごとに確実に実行する 20分ごとに、5時過ぎからタスクを実行したいのですが、Cronで可能でしょうか? そうなるでしょうか。

5/20 * * * * ?

解決方法は?

毎時5分から20分おきにタスクを実行するには、次のようにします。

 5-59/20 * * * *

説明

An * は、分フィールドの 0-59/1 ここで 0-59 範囲 1 ステップ . での最初の分にコマンドが実行されます。 範囲 (0) で始まり、その後、最初の分と ステップ (1)、最後(59)まで。

それはなぜかというと */20 * * * * は0分後、20分後、40分後に実行されます -- これは20分ごとと同じです。しかし */25 * * * * は、0分後、25分後、50分後に実行されます -- これは25分ごととは異なります。このため、分フィールドには通常、60を均等に分割したステップ値を使用することが望ましい。

そこで、開始時刻をオフセットするには、範囲を明示的に指定し、最初の値をオフセット量に設定します。

5-59/20 * * * * は、5分後、25分後、45分後に実行されます。

10-59/25 * * * * は10分後と35分後に実行されます。

1-59/2 * * * * は奇数分ごとに実行されます。