🗣️ Crontab → 自然言語
5 フィールドまたは 6 フィールド (秒付き) の cron 式を、わかりやすい自然言語の説明に変換します。次回実行 5 件も表示。
完全無料
登録不要
ブラウザ完結
5 言語対応
ダークモード
🔒 プライバシー保証:
cron 式はサーバーに送信されません。すべての解析と説明生成はブラウザ内で完結します。
自然言語の説明
次回 5 回の実行
クイック例
🔗 関連ツール
📖 つまずきやすいポイント
cron 式を自然言語の説明に翻訳します。5 フィールド (分 時 日 月 曜) と、先頭に秒を加えた 6 フィールドの両方を解釈します。式が読めることと、crontab に書いて動くことは別問題です — crontab というファイル形式には、cron 式そのものとは無関係の癖がいくつもあり、そちらで詰まるほうがむしろ多いくらいです。式の意味と次回実行時刻だけを確かめたいなら Cron 式パーサーもどうぞ。
| ケース | 何が起きるか | どうする |
|---|---|---|
コマンド内の % でジョブが壊れる |
crontab では % が「改行」として解釈されます。最初の % までがコマンドで、それ以降は標準入力として渡されます。つまり date +%Y%m%d と書くと、実行されるのは date + だけで、Y 以降は入力になります。ログのファイル名に日付を入れようとして必ず一度は踏む罠です。 |
すべての % をバックスラッシュでエスケープします — date +\%Y\%m\%d。printf の書式や URL エンコードを含むコマンドも同様です。エスケープが増えて読めなくなるようなら、処理をシェルスクリプトに切り出して crontab からはそれを呼ぶだけにするのが確実です。スクリプトの中では % は普通の文字です。 |
| 最後の行だけ実行されない | crontab ファイルは最終行が改行で終わっていなければなりません。改行が無いと、実装によってはその行が読み飛ばされます。crontab -e で編集した場合はエディタが自動で付けますが、crontab < file やデプロイスクリプトでファイルを流し込む場合は自分で保証する必要があります。エラーも警告も出ないため、原因に辿り着きにくい種類の障害です。 |
生成スクリプトの末尾で printf "\n" を足すか、crontab -l で読み戻して行数を数えて確認します。あわせて、/etc/cron.d/ に置くファイルは書式が違う点にも注意してください — こちらは時刻フィールドの後に実行ユーザー名のフィールドが 1 つ増えます (0 3 * * * root /path/to/job)。ユーザー名を書き忘れると、ユーザー名がコマンドとして実行されて失敗します。 |
| 前回のジョブが終わる前に次が始まる | cron は前回の実行が終わったかどうかを一切見ません。5 分おきの設定で処理が 7 分かかるようになると、常に 2 つ以上が同時に走り、データが増えるほど重なりが増えて雪崩れます。DB のロック競合、同じファイルへの二重書き込み、外部 API のレート制限超過が、この形で起きます。データ量が増えたある日に突然壊れるため、原因に見えにくいのが厄介です。 | flock で排他ロックを掛けてください — * * * * * /usr/bin/flock -n /tmp/myjob.lock /path/to/job と書けば、前回が走っている間は -n により即座に終了します (待たせたいなら -w 秒数)。あわせて、ジョブの実行時間をログに残して監視対象にしてください。間隔の 50% を超えたら設計を見直す合図です。 |
秒を含む 6 フィールド形式は cron の標準ではありません。Quartz、node-cron、Spring の @Scheduled といった各実装が独自に拡張したもので、Linux の crontab に書いても構文エラーになります。この画面は両方を解釈しますが、実際に動かす先がどちらを受け付けるかは、その実装のドキュメントで確認してください。さらに、@daily や @reboot のような特殊文字列は逆方向の非互換で、crontab では使えても多くのライブラリでは解釈されません。「動く場所が違えば式の意味も違う」と考えておくのが安全です。
📖 使い方
-
1
cron 式を入力上部の入力欄に 5 フィールドまたは 6 フィールドの cron 式を貼り付けるか入力します。
-
2
説明を読む入力と同時に自然言語の説明と次回 5 件の実行時刻が表示されます。
-
3
クイック例を試す下部のクイック例をクリックすると、よく使われるパターンを即座に読み込めます。
❓ よくある質問
5 フィールドと 6 フィールドの違いは何ですか?
5 フィールドは標準 Unix 形式 (分 時 日 月 曜日)、6 フィールドは先頭に秒が付く形式 (秒 分 時 日 月 曜日) で、Quartz や Spring などで使われます。
Cron ビジュアライザーとの違いは?
このツールは「自然言語の説明」に特化しており、5 言語で読みやすい文章を生成します。ビジュアライザーは時刻表や図解中心です。
@daily などのエイリアスは使えますか?
@yearly / @annually / @monthly / @weekly / @daily / @midnight / @hourly のエイリアスをすべてサポートしています。
🐛 このツールで問題が発生しましたか?
完全無料・登録不要。再現手順だけでも結構です。届いたご報告は運営者に直接届き、修正の参考にします。
✅
ご報告ありがとうございます!
運営者に届きました。改善の参考にさせていただきます。