Назад | Перейти на главную страницу

Что означает * * * * * (пять звездочек) в файле cron?

Первая строка без комментариев в устаревшем файле crontab начинается с пяти звездочек:

* * * * * ([a_command]) >/dev/null 2>&1

Авторы ушли, поэтому я не знаю их намерение. Что означают символы подстановки для (Solaris 8) cron? Ставки здесь либо выполняются один раз, либо постоянно, либо никогда, что, к сожалению, довольно много.

Если вас интересует строка комментария, предшествующая этому, это «Не удалять».

Примечание. Этот файл cron работает. Этот вопрос не дубликат вопроса о сломанных файлах cron или файлах cron, которые требуют устранения неполадок.

Эта команда выполняется каждую минуту каждого дня недели каждого месяца.

man 5 crontab есть документация по этому поводу. Если вы просто наберете man crontab, вы получите документацию для crontab команда. Вам нужен раздел 5 страниц руководства, который охватывает файлы конфигурации системы, включая /etc/crontab файл. Для дальнейшего использования разделы описаны в man man:

   1   Executable programs or shell commands
   2   System calls (functions provided by the kernel)
   3   Library calls (functions within program libraries)
   4   Special files (usually found in /dev)
   5   File formats and conventions eg /etc/passwd
   6   Games
   7   Miscellaneous  (including  macro  packages and conven‐
       tions), e.g. man(7), groff(7)
   8   System administration commands (usually only for root)
   9   Kernel routines [Non standard]

* = всегда. Это подстановочный знак для каждой части выражения расписания cron.

Так * * * * * средства every minute из every hour из every day из every month и every day из week.

 * * * * *  command to execute
 ┬ ┬ ┬ ┬ ┬
 │ │ │ │ │
 │ │ │ │ │
 │ │ │ │ └───── day of week (0 - 7) (0 to 6 are Sunday to Saturday, or use names; 7 is Sunday, the same as 0)
 │ │ │ └────────── month (1 - 12)
 │ │ └─────────────── day of month (1 - 31)
 │ └──────────────────── hour (0 - 23)
 └───────────────────────── min (0 - 59)

Красивый рисунок выше предоставлен википедия

Другой пример:

0 * * * * -это означает, что cron будет работать всегда, когда 0 (так ежечасно)
0 1 * * * - это означает, что cron всегда будет работать в 1 час.
* 1 * * * - это означает, что cron будет запускаться каждую минуту, когда час равен 1. Итак 1:00, 1:01, ...1:59.

First star = Minutes: 0-59
Second star = Hours: 0-23
Third star = Day of Month: 0 - 31
Fourth star = Month: 0 - 12
Fifth star = Day of Week: 0 - 6 (0 means sunday)

Допустим, вы хотите запускать что-то 1-е число каждого месяца.

0 0 1 * * something.sh