Работать cron в 2:30 утра каждый день


310

Как настроить работу cron для запуска каждую ночь в 2:30? Я знаю, как заставить его работать на 2, но не 2:30.

Ответы:



150
  1. Редактировать:

    crontab -e
    
  2. Добавьте эту командную строку:

    30 2 * * * /your/command
    
    • Формат Crontab:

      МИН ЧАС ДОМ МОН ДОУ 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
    

1
используйте «перезапуск службы cron» для Ubuntu
AA

61

Как видно из других ответов, используется следующий синтаксис:

  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использование crontab -e. Как только вы закончите, сохраните и выйдите (если вы используете 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-скрипт? ,


1
crontab.guru - очень полезный ресурс
onewhaleid

7

Самый простой способ написать cron - использовать онлайн- генератор cron. Он сгенерирует линию для вас. Стоит отметить, что если вы хотите запускать его каждый день (не только в будние дни), вам нужно выделить все дни.



1

В дополнение ко всем вышеупомянутым отличным ответам, проверьте https://crontab.guru/ - полезный онлайн-ресурс для проверки вашего синтаксиса crontab.

То, что вы получаете, является читабельным представлением того, что вы указали.

Смотрите примеры ниже:

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.