web-dev-qa-db-ja.com

毎日午前2時30分にcronジョブを実行する

毎晩2:30に実行するようにcronジョブを構成する方法私はそれを2時に実行する方法を知っていますが、2:30にはしません。

269
user1856596
crontab -e

追加:

30 2 * * * /your/command
472
JoG
  1. 編集するには:

    crontab -e
    
  2. このコマンドラインを追加します。

    30 2 * * * /your/command
    
    • クロンタブ形式:

      最低時間DOM MON DOW CMD

    • フォーマットの意味と許容値
    • MIN Minute field 0 to 59
    • HOUR Hour field 0 to 23
    • DOM Day of Month 1-31
    • MON Month field 1-12
    • DOW Day Of Week 0-6
    • CMD Command Any command to be executed.
  3. 最新のデータでcronを再起動します。

    service crond restart
    
127
A.A

他の答えで見られるように、使用する構文は次のとおりです。

  30 2 * * * /your/command
# ^  ^
# |   hour
# minute

Crontabの標準形式に従います。

 +---------------- minute (0 - 59)
 |  +------------- hour (0 - 23)
 |  |  +---------- day of month (1 - 31)
 |  |  |  +------- month (1 - 12)
 |  |  |  |  +---- day of week (0 - 6) (Sunday=0 or 7)
 |  |  |  |  |
 *  *  *  *  *  command to be executed

crontab.guru を使用してcrontab式をチェックすることも便利です。

式はcrontab -eを使用してcrontabに追加されます。完了したら、保存して終了します(viを使用している場合は、:xと入力しても有効です)。このツールを使用する際には、無効なコマンドを入力するとフォームにプロンプ​​トが表示される可能性があります。

$ crontab -e
crontab: installing new crontab
"/tmp/crontab.tNt1NL/crontab":7: bad minute
errors in crontab file, can't install.
Do you want to retry the same edit? (y/n) 

Crontabが動作していないという問題がさらにある場合は、 デバッグcrontab または crontabでPHPスクリプトが実行されないのはなぜですか。

52
fedorqui

Cronを書く簡単な方法はオンラインのcronを使うことです - ジェネレータ それはあなたのために行を生成します。注意すべきことは、毎日(平日だけではなく)実行したい場合は、すべての日をハイライトする必要があるということです。

7
DevilCode

上記のすべての素晴らしい答えに加えて、 https://crontab.guru/ - crontabの構文をチェックするのに役立つオンラインリソースをチェックしてください。

あなたが得るものはあなたが指定したものの人間が読める表現です。

以下の例を参照してください。

1

30 2 * * * wget https://www.yoursite.com/your_function_name

最初の部分はcronジョブを設定するためのもので、次の部分はあなたの関数を呼び出すためのものです。