DevToolKits.app
Article

Cron式の書き方マスターガイド:基本的な構文から応用設定まで

エンジニア必須知識のCron式について、5つのフィールドの意味や特殊文字(* , / ? L W #)の使い方、スケジュールの設定例をわかりやすく解説します。

Cronのイメージ

Cron(クーロン)とは?

Cron は、Unix系オペレーティングシステムのタイムベースのジョブスケジューラです。指定した時間にスクリプトやコマンドを自動的に実行するために使用されます。

その設定を記述する形式が Cron式 です。

Cron式の基本構造

標準的なCron式は5つのフィールド(または6つ)で構成され、スペースで区切られています。

*  *  *  *  *
┬  ┬  ┬  ┬  ┬
│  │  │  │  │
│  │  │  │  └─ 曜日 (0 - 6) (0=日曜)
│  │  │  └─── 月 (1 - 12)
│  │  └────── 日 (1 - 31)
│  └───────── 時 (0 - 23)
└──────────── 分 (0 - 59)

特殊記号の使い方

Cron式を柔軟にするための強力な記号がいくつかあります:

  • * (ワイルドカード): 「すべて」を意味します。「毎分」「毎日」など。
  • , (区切り文字): リストを指定します。例: 1,15,30 (1分、15分、30分)。
  • - (範囲): 範囲を指定します。例: 9-17 (9時から17時)。
  • / (間隔): 増分を指定します。例: */15 (15分おき)。

よく使う設定例

  • 毎晩 0:00 に実行: 0 0 * * *
  • 月曜から金曜の朝 9:00 に実行: 0 9 * * 1-5
  • 毎月 1日の 04:30 に実行: 30 4 1 * *
  • 1時間おき(毎時 0分)に実行: 0 * * * *
  • 15分ごとに実行: */15 * * * *

Cron式を安全に作成するには

Cron式は1文字間違えるだけで、意図しない時間にジョブが実行されたり、サーバーに過剰な負荷をかけたりするリスクがあります。

当サイトの Cron式エディタ・解析器 を使えば、入力したCron式を即座に「人間が読める言葉」に変換し、次の実行予定時刻をプレビューできます。

💡 Tips: サーバーのタイムゾーンが UTC か JST かによって、実際の実行時間が変わるため注意が必要です。

関連ツール

広告

広告