次において実施00:00、月の 1 日目1月 でのみ

0 0 1 1 *

フィールド

分00
時00
日11
月11
曜日*任意

使える場所

crontab0 0 1 1 * /path/to/script.sh
GitHub Actions- cron: "0 0 1 1 *" (on.schedule)
Kubernetes CronJobschedule: "0 0 1 1 *"

crontab はサーバーのタイムゾーンで動作します。GitHub Actions は常に UTC を使います。

知っておきたいこと

0 0 1 1 * は年に 1 回、1 月 1 日の午前 0 時に実行され、@yearly や @annually と同じです。これほどまれなジョブはテストしにくく、忘れられがちです。次の 1 月までに、スクリプトや認証情報、サーバーそのものが変わっているかもしれません。登録後に一度手動で実行し、1 年と 1 日以内に成功した実行の報告がなければアラートを出す監視を追加しましょう。

サーバー時刻が業務上の年と一致するとは限りません。UTC のサーバーでは、中央ヨーロッパでは 01:00、ニューヨークでは 12 月 31 日の 19:00 に起動します。その時刻にマシンが停止していると cron は後から実行しませんが、anacron や Persistent=true を指定した systemd タイマーなら実行します。四半期ごとの実行には、0 0 1 1,4,7,10 * か、同等の 0 0 1 */3 * を使います。

cron 式の作成・解説ツールを開く