Расписание cron: готовые примеры
Выберите нужное расписание и замените путь к скрипту на свой. Время во всех примерах — по часам сервера.
Содержание 12
Как пользоваться примерами
Пять полей в начале строки — минута, час, день месяца, месяц и день недели. Что значат звёздочка, запятая, дефис и косая черта — в справочнике Cron в Linux: как устроено расписание.
Целиком строка выглядит так — сначала расписание, потом команда:
*/5 * * * * /home/ivan/task.shВместо /home/ivan/task.sh подставьте свою команду или путь к скрипту. Строку добавляют командой crontab -e — пошагово.
Каждые несколько минут
| Расписание | Когда запускает |
|---|---|
* | Каждую минуту |
/5 * | Каждые 5 минут: в 0, 5, 10 … 55 минут каждого часа |
/10 * | Каждые 10 минут |
/15 * | Каждые 15 минут: в 0, 15, 30 и 45 минут |
/30 * | Каждые полчаса: в 0 и 30 минут |
5-59/10 | Каждые 10 минут со сдвигом: в 5, 15, 25 … 55 минут |
Больше одного раза в минуту cron запускать не умеет: минута — самый мелкий шаг.
Каждый час и несколько раз в день
| Расписание | Когда запускает |
|---|---|
0 или @hourly | Каждый час в 0 минут |
30 | Каждый час в 30 минут: 0:30, 1:30 … 23:30 |
0 /2 | Каждые 2 часа: 0:00, 2:00 … 22:00 |
0 /6 | Каждые 6 часов: 0:00, 6:00, 12:00 и 18:00 |
0 8,20 * | Дважды в день: в 8:00 и 20:00 |
0 9-18 * | Каждый час с 9:00 до 18:00 |
/5 9-18 | Каждые 5 минут с 9:00 до 18:55 |
Раз в день
| Расписание | Когда запускает |
|---|---|
0 3 * | Каждый день в 3:00 |
30 3 * | Каждый день в 3:30 |
0 0 * или @daily | Каждый день в полночь |
59 23 * | Каждый день в 23:59 |
Тяжёлые задачи — резервные копии, очистку — ставьте на ночь по времени ваших посетителей. Несколько таких задач разнесите на 10–15 минут, чтобы они не работали одновременно.
По дням недели
| Расписание | Когда запускает |
|---|---|
0 9 1-5 | По будням в 9:00 |
0 10 6,0 | По выходным в 10:00 |
0 4 0 | По воскресеньям в 4:00 |
0 4 7 | Тоже по воскресеньям в 4:00: и 0, и 7 — воскресенье |
30 7 mon | По понедельникам в 7:30 |
0 0 0 или @weekly | Раз в неделю: в ночь с субботы на воскресенье |
Дни недели: 1 — понедельник, 2 — вторник … 6 — суббота, 0 или 7 — воскресенье.
По числам и месяцам
| Расписание | Когда запускает |
|---|---|
0 2 1 | 1-го числа каждого месяца в 2:00 |
0 0 1 или @monthly | 1-го числа в полночь |
0 2 1,15 | 1-го и 15-го числа в 2:00 |
0 6 1 1,4,7,10 * | Раз в квартал: 1 января, апреля, июля и октября в 6:00 |
0 10 6-8 | Каждый день с июня по август в 10:00 |
0 0 1 1 * или @yearly | Раз в год: 1 января в полночь |
При загрузке сервера
@reboot /home/ivan/start.shКоманда запустится один раз при загрузке сервера. На перезапуск службы cron эта запись не срабатывает. cron может стартовать раньше других служб — если скрипту нужны база данных или сеть, начните его с паузы sleep 60.
Ловушка: день месяца и день недели вместе
0 9 13 * 5 /home/ivan/task.shКажется, что это «пятница, 13-е». На деле задача запустится и 13-го числа, и в каждую пятницу: когда заданы оба поля, cron срабатывает при совпадении любого из них. Одной строкой расписания «пятницу 13-го» не задать — проверку дня недели переносят в команду:
0 9 13 * * [ "$(date +\%u)" = 5 ] && /home/ivan/task.shКоманда date +%u выдаёт номер дня недели, где 1 — понедельник, 5 — пятница. Задача стартует 13-го числа, но скрипт выполнится, только если это пятница. Обратная косая черта перед % обязательна: без неё cron обрежет команду.
Так же задаётся «первый понедельник месяца» — дни с 1-го по 7-е плюс проверка дня недели:
0 9 1-7 * * [ "$(date +\%u)" = 1 ] && /home/ivan/task.shПоследний день месяца
Поля для последнего дня месяца в cron нет: в разных месяцах он разный. Задачу запускают с 28-го по 31-е число, а в команде проверяют, что завтра — 1-е:
0 23 28-31 * * [ "$(date -d tomorrow +\%d)" = 01 ] && /home/ivan/task.shdate -d tomorrow +%d выдаёт число завтрашнего дня двумя цифрами. Скрипт выполнится в 23:00 только в последний день месяца.
Что одной строкой не задать
- Запуск больше одного раза в минуту.
- Интервал, на который час или сутки не делятся ровно, — каждые 7 минут или каждые 5 часов: шаг отсчитывается заново с начала каждого часа или суток.
- Свой часовой пояс для отдельной задачи: cron в Ubuntu работает по часовому поясу сервера.
Если задача не запустилась по расписанию, смотрите разбор Cron не запускает скрипт: что проверить.
Команды и тексты сообщений сверены с пакетом cron 3.0pl1-184ubuntu2 из Ubuntu 24.04 — его справкой и исходным кодом.
Источники
- Справка crontab(5) из пакета cron для Ubuntu 24.04 — поля расписания, диапазоны, шаг, записи с @, знак %, переменные.
- Справка cron(8) из пакета cron для Ubuntu 24.04 — проверка расписаний раз в минуту, /etc/cron.d, часовой пояс.
- Исходный код cron: cron.c — задачи @reboot только при загрузке системы.
- Справка date для Ubuntu 24.04 — формат %u и ключ -d.
Сверено 10 октября 2026 года.
Что почитать дальше
Проверено и обновлено: 10.10.2026