Что такое cron?
Cron — это планировщик задач в Unix-подобных системах (Linux, macOS, BSD). Он автоматически запускает команды или скрипты по расписанию: в нужное время, через равные интервалы или по определённым дням.
Зачем он нужен
С помощью cron обычно:
- делают резервные копии (backup)
- чистят логи и временные файлы
- запускают скрипты обслуживания
- выполняют периодические задачи (раз в минуту, час, день, неделю)
Как это работает
У cron есть таблица задач — crontab. В ней каждая строка описывает:
-
когда выполнять задачу
-
что именно выполнять
Формат записи:
* * * * * команда
│ │ │ │ │
│ │ │ │ └─ день недели (0–7, где 0 и 7 — воскресенье)
│ │ │ └─── месяц (1–12)
│ │ └───── день месяца (1–31)
│ └─────── час (0–23)
└───────── минута (0–59)
Пример
Запускать скрипт каждый день в 3:30 ночи:
30 3 * * * /home/user/backup.sh
Запускать команду каждую минуту:
* * * * * echo "hello"
Полезные команды
-
crontab -e— редактировать расписание -
crontab -l— посмотреть текущие задачи -
crontab -r— удалить все задачи
Генераторы выражений
Писать cron-выражения вручную может быть неудобно, или бывает сложно понять, что означает сложное выражение. Чтобы помочь с этим, существуют онлайн-генераторы cron-выражений:
crontab.guru
-
Вводите cron-выражение — сразу видно понятное описание
-
Или наоборот: подбираете выражение и проверяете, когда оно сработает
-
Популярный и простой
🔹 Cron Maker
-
Пошаговый конструктор (минуты, часы, дни, месяцы)
FreeFormatter Cron Generator
-
https://www.freeformatter.com/cron-expression-generator-quartz.html
-
Поддерживает Quartz cron (Java / Spring)
-
Полезно, если работаете с Java-планировщиками
Частые шаблоны:
Каждую минуту: * * * * *
Каждые 5 минут: */5 * * * *
Каждый час: 0 * * * *
Каждый день в 02:00: 0 2 * * *
Каждый понедельник в 9:00: 0 9 * * 1
По будням в 18:30: 30 18 * * 1-5
1 раз в месяц (1 числа в 00:00): 0 0 1 * *
Полезные фишки cron
*/n— каждые n единиц,— перечисление (1,3,5)-— диапазон (1-5)@daily,@hourly,@weekly— готовые алиасы (поддерживаются не везде)
Пример:
@daily /path/script.sh - запускает скрипт ежедневно
CRON Manager
CRON manager — это панель управления для ваших cron-заданий с удобным UI и системой уведомлений.
Вы создаете задание через веб-интерфейс: задаете команду, расписание, пользователя и способы оповещения, а система сама обновляет crontab и следит за запуском
В CRON Manager включен генератор выражений, что позволяет собирать сложные выражения, а текстовое описание позволяет понять, когда задача будет запущена. Узнать больше о CRON Manager можно на странице cronmanager.spheragroup.ru