無料Cron式ジェネレーター - Cronジョブを視覚的に作成
325 回使用Cron式
* * * * *
ヒント
5つのフィールド
標準のCronは分、時、日、月、曜日の5つのフィールドを使用します
ワイルドカード
アスタリスク(*)はそのフィールドのすべての値を意味します
よく使うパターン
プリセットを活用:毎日深夜(0 0 * * *)、毎時(0 * * * *)
検証
次の5回の実行時刻を確認して、Cron式を必ず検証しましょう
よくある質問
平日のみ2時間おきにcronジョブを実行できますか?
もちろん可能です。分フィールドを0に設定し、時フィールドに */2 を入力して2時間間隔を指定します。曜日フィールドには1-5を追加。結果は「0 */2 * * 1-5」になります。ライブプレビューで00:00、02:00、04:00と平日のみ実行されるのを確認できます。深夜0時の動作は特にチェックしてください。
分フィールドで */5 を指定すると、5秒ごとにジョブが実行されますか?
いいえ — */5 は5分ごとを意味し、秒単位ではありません。cronには秒フィールドが存在しません。このジェネレーターでは */5 を選択すると :00、:05、:10 のタイミングで実行されることが明確に表示されます。よくある誤解は1分未満の間隔を設定できると思うことです。標準のcronでは不可能です。5秒間隔が必要なら、スクリプト内でループを組むか、専用のスケジューラーを使ってください。
日付と曜日の両方を指定したのにcronジョブが2回実行されるのはなぜ?
これは多くの人が一度はハマるポイントです。標準cronでは月日と曜日をOR条件で扱います。`15 15 * * 1` は毎月15日 AND 毎週月曜日に実行されます。本ツールでは両方のフィールドを選択すると黄色い警告が表示されます。ANDロジックに切り替えるか、'詳細モード'でスクリプト側のチェックを追加してください。本番投入前は必ずライブプレビューで直近5回の実行を確認しましょう。
毎月最終日にジョブを実行するスケジュールを、このジェネレーターで作れますか?
はい — cronが対応している中でも特にトリッキーなスケジュールですが、当ツールなら扱えます。日フィールドに'L'を指定してください。多くのUIでは非表示ですが、当ツールの詳細オプションに専用トグルがあります。生成される式は`0 0 L * *`のようになります。ライブプレビューが特に重要で、1月31日や2月28日(うるう年は29日)のような正確な日付を表示します。月次請求やレポート作成に最適です。
夏時間の切り替え後、cronジョブがずれた時間に実行されるのはなぜ?
cronはサーバーのタイムゾーン設定によって夏時間の扱いが変わります。UTCを使えば何もずれませんが、ローカル時刻だとジョブが2回実行されたり、スキップされたりします。このジェネレーターのプレビューパネルにはタイムゾーンのドロップダウンがあり、サーバーに合わせて設定できます。例えば午前2時30分のジョブは、米国の多くの地域で春先の切り替え日に実行されません。毎日存在する時刻(午前3時15分など)を選ぶか、許容できればUTCに揃えるのが安全です。
デプロイ前に、特定の日付範囲でcron式をテストする方法はありますか?
ライブプレビューがまさにこれをカバーしています。式を設定したら、プレビューパネルの日付範囲フィルターを使いましょう。たとえば来週の火曜から木曜に絞り込めば、その期間内に実行される回を正確に確認できます。休日スケジュールのような一回限りの問題をデバッグする場合、次の20回をスクロールするよりこの範囲表示が断然効率的です。ヘッダーにあるカレンダーアイコンをクリックしてみてください。すぐに使い方がわかります。
毎月第2水曜日だけに実行するcron式を作れますか?
標準のcronは「第2水曜日」を直接サポートしていませんが、当ツールには回避策があります。Quartz構文なら「0 0 ? * 3#2」を使えます。専用トグルで切り替え可能です。別の方法として、曜日フィールドに3を指定し、スクリプト側で第2水曜日かどうかを判定します。ライブプレビューで2月12日や3月12日など実際の日付を確認できます。5週目がある月の境界ケースを見つけるため、1年分テストしましょう。
入力したcron式はサーバーに送信されたり保存されたりしますか?
いいえ、処理はすべてブラウザ内で完結します。ドロップダウン、プリセット、次回実行時刻の計算はすべてクライアント側のJavaScriptで動くので、入力内容が外部に送られることはありません。開発者ツールのNetworkタブを開いて 0 3 * * 1-5 のような式を組んでみてください。リクエストは一件も発生しません。共用PCを使った場合は、念のためブラウザのキャッシュを消しておくと安心です。
cronジョブの実行予定時刻にサーバーが再起動するとどうなりますか?
予定時刻にサーバーがダウンしている場合、cronはその実行を単にスキップし、復旧後に自動で再実行することはありません。当ツールのプレビュー画面ではサーバーの停止を検知できないため、anacronなどのユーティリティを併用する必要があります。重要なバックアップ処理では、実行漏れを監視アラートで検知できるようにしておきましょう。
プレビューにはデフォルトで次回の実行時刻が何件表示されますか?
ライブプレビューでは、ドロップダウンを変更するとすぐに次回の実行予定が5件表示されます。メンテナンスのために長めの期間を確認したい場合は、展開ボタンをクリックするだけで、今後の実行予定を20件まで確認できます。本番環境に反映させる前に、ジョブの重複を簡単に見つけることができます。
使い方
- 各フィールドのドロップダウンから値を選択するか、プリセットをクリック
- Cron式がリアルタイムで更新されます
- 人間が読める説明を確認
- 次の5回の実行時刻をチェック
- コピーをクリックしてcrontabで使用