Как добавить задание в Cron

При настройки резервного копирования, запуске автоматических скриптов в операционной системе Linux используется демон планирования cron, который запускает команды в определенное время на регулярной основе с заданной периодичностью.

Добавление новых команд в планировщик

Чтобы настроить задание cron, откройте crontab в предпочитаемом текстовом редакторе и введите синтаксис команды, задайте время запуска.

Откроем временный файл с текущими заданиями для пользователя вошедшим в систему при помощи утилиты crontab. Для этого, достаточно указать параметр -e.

crontab -e

crontab -e

ВАЖНО! При добавлении новых задач необходимо соблюдать синтаксис.

Задачи для демона планирования cron настраиваются по синтаксису:

минута час день месяц день_недели /путь/к/исполняемому/файлуРасписание

Можно добавить любое количество запланированных задач, в одной в строке.

Когда закончите добавлять задачи, сохраните файл и выйдите. Демон cron прочитает и выполнит предоставленные инструкции.

ВАЖНО! Cron не нужно перезапускать, чтобы изменения вступили в силу.

Как добавить задание для другого пользователя

Чтобы отредактировать планировщик в операционной системе Линукс для другого пользователя, введите команду с параметром -u:

crontab –u other_username –e

Наглядные примеры задач

При указании заданий используйте звездочку, чтобы указать все значения. Ввод значения в одно из полей запускает команду только для этого значения. Например:

* 2 0 * 4 /root/backup.sh

Несмотря на то, что он настроен на 2 часа ночи, он запустится только тогда, когда первое число месяца (0) придется на среду (4). Если вы измените на следующие параметры:

* 2 0 * * /root/backup.sh

Команда запускается первого числа каждого месяца в 2 часа ночи. В следующей таблице представлены несколько основных команд, использующих файл /root/backup.sh из наших предыдущих примеров.

crontab таблица

Запустим задание каждые 2 часа.

0 */2 * * * /root/backup.sh
At 0 minutes past the hour, every 3 hours.

Использование специальных символов

Вы можете использовать косую черту, чтобы разделить временную строку на шаги. Это позволит запускать резервное копирование каждые 15 минут: */15 * * * *,

  • * - означает все значения;
  • 15 – указывает, что процесс следует повторять каждые 15 минут.

Используйте символ дефис, чтобы указать диапазон. Например, что бы запускать код каждый будний день в 4 утра: 0 4 * * 1-5 /root/backup.sh,

  • 1 – 5, означает промежуток дней с понедельника по пятницу.

Используйте запятую, чтобы указать отдельные экземпляры, когда должен выполняться код: 0 4 * * 2,4 /root/backup.sh. Такая команда позволит запустить код в 4 утра во вторник и в четверг.

Некоторые подстановочные знаки можно комбинировать. Заставьте команду запускаться через день в 37 минут после часа: 37 1-23/2 * * * /root/backup.sh,

  • 1-23указывает диапазон часов;
  • /2устанавливает интервал через каждый час.

Список существующих заданий Cron

Можно посмотреть все задания крон в системе, не открывая файл конфигурации crontab.

Введите следующую команду в окне терминала:

crontab –l

Вывод

Теперь вы хорошо понимаете, как использовать cron для планирования задач в Linux. Используйте примеры, представленные в этом руководстве, для создания и планирования заданий cron в вашей системе. Со временем расширяйте задачи, используя специальные символы, чтобы автоматизировать большинство ваших рутинных задач.