Crontab ジェネレーター
cron 式を生成・検証し、人間が読める説明を即座に表示。スケジュールを可視化し、次回実行時間をプレビューし、crontab 形式でエクスポート。Linux/Unix システム管理者に最適。
crontabファイルとは何ですか?
crontabファイルは、Unix系オペレーティングシステムでcronデーモンが使用する設定ファイルで、指定された間隔でコマンドやスクリプトを自動的に実行するようにスケジュールします。各ユーザーは独自のcrontabファイルを持つことができます。
cron式にはいくつのフィールドがありますか?
標準的なcron式には5つのフィールドがあります:分(0-59)、時(0-23)、日(1-31)、月(1-12)、曜日(0-7、0と7は日曜日)。一部のシステムでは年を表すオプションの第6フィールドをサポートしています。
cronのアスタリスク(*)は何を意味しますか?
アスタリスク(*)はそのフィールドの「すべて」または「すべての可能な値」を意味するワイルドカードです。例えば、分フィールドの*はコマンドが毎分実行されることを意味します。
cronで複数の値を指定するにはどうすればよいですか?
カンマを使用して複数の値を指定できます(例:月水金なら1,3,5)、ハイフンで範囲を指定できます(例:月〜金なら1-5)、スラッシュでステップ値を指定できます(例:2単位ごとなら*/2)。
日(フィールド3)と曜日(フィールド5)の違いは何ですか?
日(フィールド3)は日付(1-31)を指定し、曜日(フィールド5)は曜日を指定します(0-7)。両方が制限されている場合、どちらかが一致するときにコマンドが実行されます。
5分ごとにcronジョブを実行するにはどうすればよいですか?
*/5 * * * *という式を使用します。これは「5分ごと」を意味します。分フィールドの*/5は、各時間の0、5、10、15、20、25、30、35、40、45、50、55分にトリガーされるステップパターンを作成します。
午前9時と午後5時など、特定の時間にジョブをスケジュールできますか?
はい、カンマ区切りの値を使用します:0 9,17 * * *は毎日午前9時と午後5時に実行されます。0 9-17 * * *のような範囲を使用して、午前9時から午後5時まで毎時実行することもできます。
@dailyや@hourlyなどの特別なcron文字列とは何ですか?
特別な文字列はショートカットです:@yearlyまたは@annually(年1回)、@monthly(月1回)、@weekly(週1回)、@dailyまたは@midnight(日1回)、@hourly(時間1回)、@reboot(システム起動時)。
crontabファイルはどのように編集しますか?
crontabファイルを編集するには「crontab -e」コマンドを使用します。現在のcronジョブを一覧表示するには「crontab -l」を使用し、すべてのcronジョブを削除するには「crontab -r」を使用します。編集する前に必ずバックアップを取ってください。
cronログはどこに保存されますか?
cronログは通常、Linuxディストリビューションに応じて/var/log/cron、/var/log/messages、または/var/log/syslogに保存されます。crontabエントリでcron出力をカスタムログファイルにリダイレクトすることもできます。
cronジョブが実行されないのはなぜですか?
一般的な問題には次のものがあります:構文の誤り、ファイル権限の誤り、コマンドがPATHにない、環境変数が設定されていない、cronデーモンが実行されていない。エラーメッセージのログを確認し、このツールで式を検証してください。
crontabで環境変数を使用できますか?
はい、crontabファイルの先頭で環境変数を定義できます(例:SHELL=/bin/bash、PATH=/usr/bin:/bin)。これらの変数はそのファイル内のすべてのcronジョブに適用されます。
6フィールドcron構文とは何ですか?
6フィールド構文は先頭に秒フィールドを追加します:秒 分 時 日 月 曜日。これはQuartz Schedulerなどの一部のcron実装でサポートされていますが、標準的なUnix cronではサポートされていません。
crontabのバックアップはどのように取りますか?
「crontab -l > mycrontab.backup」を実行して、crontabをファイルに保存します。復元するには「crontab mycrontab.backup」を使用します。変更を加える前にバックアップを取ることが良い習慣です。