cron式ジェネレーター

スケジュールを指定すると、それを実行するcron式と、選んだタイムゾーンでの次回以降の実行日時が得られます。

フォームのほかの項目はこれによって決まります。
分単位の間隔で、毎時の始まりから数えます。
次回の実行日時の表示にのみ使います。式自体にはタイムゾーンは含まれません。

式

0 3 * * *

03:00に実行。

次回の実行
2026-10-10 03:00 UTC

次回以降の実行

  • 土 2026-10-10 03:00
  • 日 2026-10-11 03:00
  • 月 2026-10-12 03:00
  • 火 2026-10-13 03:00
  • 水 2026-10-14 03:00
  • 木 2026-10-15 03:00

タスクをいつ実行するかを指定すると、対応するcrontabの行を書き出します。次に実行される日時も表示するので、結果をうのみにせず確かめられます。

仕組み

頻度によって、5つのフィールドのうちどれを固定し、どれを開けておくかが決まります。1時間に1回なら分を固定し、1日1回ならさらに時を固定します。週1回なら曜日を、月1回なら日を、年1回なら月も加えます。1時間に複数回の場合は、分のフィールドに時の始まりから数えたステップを書きます。

書き出した式は、読み解きツールと同じパーサーでもう一度読み込まれ、実行日時と説明文はその読み込み結果から作られます。式そのものから導いたこと以外、結果について何も主張しません。

日のフィールドを2つ以上固定することはないので、ここで書き出す式がcronの日のルール(どちらか一方の制限に一致すれば十分というルール)の影響を受けることはありません。

例

ケース 入力 結果
夜間のバックアップ 1日1回、03:30 30 3 * * *
15分ごと 1時間に複数回、15分ごと */15 * * * *
月曜朝のレポート 週1回、月曜日の08:00 0 8 * * 1

よくある質問

「平日の9時と17時」を作れないのはなぜですか?

cronが受け付けるすべての形に対応するフォームは、入力欄が増えただけのcrontab構文そのものになってしまうからです。ここにある頻度でほとんどのタスクに必要なものはカバーできます。それ以外の場合は式を自分で書き、読み解きツールで確認してください。入力されたものを何でも説明します。

式はどのタイムゾーンを使いますか?

どれも使いません。crontabの行にはタイムゾーンが含まれず、インストールされたマシンのタイムゾーンで実行されます。ここで選ぶタイムゾーンは、次回の実行日時をどの時計で表示するかを決めるだけです。実際の動きを確認するには、マシンと同じタイムゾーンを選んでください。

毎月31日を指定するとどうなりますか?

式は書き出され、cronは31日のない月を飛ばします。実行日時を見るとわかるとおり、2月、4月、6月、9月、11月は飛ばされます。

「1時間に複数回」は毎時0分ちょうどに実行されますか?

はい。ステップは0分から数えるので、20分ごとなら:00、:20、:40になります。毎時の始まりでまた数え直すので、60を割り切れないステップではそこに短い間隔が生じます。

知っておきたいこと

  • 5フィールドのcrontab構文です。`@daily`などの略記や、一部のスケジューラーが加える拡張(秒のフィールド、`L`、`W`、`#`)はここでは書き出しません。
  • 次回以降の実行日時はカレンダーから計算しています。夏時間の切り替え時に個々のcronデーモンがどう動くかは実装に依存し、モデル化していません。

出典

開発者向けのすべてのツール