Crontab в Linux: планирование заданий ПРИМЕРЫ

Содержание:

Anonim

Что такое кронтаб?

Крон назван в честь греческого слова «Хронос», которое используется для обозначения времени. Это системный процесс, который автоматически выполняет задачи по определенному расписанию. Это набор команд, которые используются для выполнения регулярных задач планирования. Crontab расшифровывается как «cron table». Это позволяет использовать планировщик заданий, известный как cron, для выполнения задач.

Crontab - это также имя программы, которая используется для редактирования этого расписания. Он управляется файлом crontab, файлом конфигурации, который указывает команды оболочки, которые нужно периодически запускать по определенному расписанию.

В этом руководстве по операционной системе вы узнаете:

  • Что такое кронтаб?
  • Зачем использовать CRONJOB?
  • Как использовать cron в Linux?
  • Формат Linux Crontab
  • Как добавить / изменить Crontab
  • Как добавить Crontab в список
  • Важные примеры Crontab

Зачем использовать Cronjobs?

Вот причины использования Cronjobs в Linux:

  • Помогает ОС выполнять запланированное резервное копирование файлов журнала или базы данных.
  • Удалить старые файлы журналов
  • Архивировать и очищать таблицы базы данных
  • Отправляйте любые уведомления по электронной почте, такие как информационные бюллетени или сообщения об истечении срока действия пароля.
  • Регулярная очистка кешированных данных
  • Crontab - идеальный вариант для автоматизации работы Unix.
  • Используется для автоматизации обслуживания системы

Как использовать cron в Linux?

В системном пакете Linux есть полезный планировщик задач crontab. Crontab популярен, потому что его можно запланировать для автоматического запуска процесса от имени пользователя root. Таким образом, автоматизированный процесс, запущенный от имени пользователя root, упрощает внесение изменений в систему. Вам просто нужно изменить задачу, а затем подождать, пока задача не будет повторно инициирована.

Формат Linux Crontab

Crontab Linux имеет шесть полей. Первые пять полей определяют время и дату выполнения, а шестое поле используется для выполнения команды.

Синтаксис crontab:

[Minute] [hour][Day_of_the_Month][Month_of_the_Year][Day_of_the_Week][command]

  • Astrics (*): использовать для сопоставления
  • Определить диапазон: позволяет определить диапазон с помощью дефиса, например 1-10 или 30-40 или ян-мар, пн-ср.
  • Определить несколько диапазонов: позволяет определять различные диапазоны с разделением команд, например, апр-июн, окт-декабрь.

Как добавить / изменить Crontab

Пользователь может редактировать свои задания crontab с помощью следующей команды crontab:

$ crontab -u -e

Приведенная выше команда откроет личную конфигурацию crontab вашей компьютерной системы, которую можно редактировать с помощью текстового редактора по умолчанию.

Нет необходимости перезапускать ваш crontab, поскольку он автоматически подберет ваши изменения, когда вы воспользуетесь следующей командой.

$ crontab -l

Чтобы удалить задачи crontab, используйте следующую команду.

$ crontab -r

Чтобы добавить или обновить задание в crontab, используйте приведенную ниже команду.

crontab -e

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

crontab -u username -e

Как добавить Crontab в список

Команда для просмотра записей crontab текущего пользователя

crontab -l

Команда для просмотра записей crontab конкретного пользователя:

crontab -u username -l

Важные примеры Crontab

Вот несколько важных примеров Crontab

Описание Командование
Команда Cron для выполнения различных заданий по планированию. Приведенная ниже команда выполняется ежедневно в 7:00 и 17:00.
0 7,17 * * * /scripts/script.sh
Команда запускать cron каждые 5 минут.
*/5* * * * * /scripts/script.sh
Команда планировщика Cron поможет вам выполнить задачу каждый понедельник в 5 часов утра. Эта команда полезна для выполнения еженедельных задач, таких как очистка системы.
0 5 * * mon /scripts/script.sh
Команда запускает ваш скрипт с интервалом в 3 минуты.
*/3 * * * * /scripts/monitor.sh
Команда для планирования запуска cron на определенный месяц. Эта команда для запуска задач выполняется в феврале, июне и сентябре. Иногда нам нужно запланировать задачу для выполнения выбранной ежемесячной задачи.
* * * feb,jun,sep * /script/script.sh
Команда для выполнения в выбранные дни. Этот пример будет запускаться каждый понедельник и среду в 17:00.
0 17 * * mon,wed /script/script.sh
Эта команда позволяет cron запускаться в первую субботу каждого месяца.
0 2 * * sat [ $(date +%d) -le 06 ] && /script/script.sh
Команда для запуска сценария с интервалом в 6 часов, поэтому его можно настроить, как показано ниже.
0 */6 * * * /scripts/script.sh
Эта команда планирует выполнение задачи дважды в понедельник и вторник. Для этого используйте следующие настройки.
0 4,17 * * mon,tue /scripts/script.sh
Команда планирует запуск cron через каждые 15 секунд.
* * * * * /scripts/script.sh* * * * * sleep 15; /scripts/script.sh
Команда для планирования задач на годовой основе. @yearly timestamp = "0 0 5 1 *". Это выполняет задачу на пятой минуте каждого года. Вы можете использовать его для отправки новогоднего поздравления.
@yearly /scripts/script.sh
Командные задачи выполнять ежемесячно. Отметка времени @monthly аналогична «0 0 1 * *». Это командное выражение позволяет выполнить задачу в первую минуту месяца.
@monthly /scripts/script.sh
Команда для выполнения нескольких задач с помощью одного cron.
* * * * * /scripts/script.sh; /scripts/scrit2.sh
Команда для еженедельного расписания задач. Отметка времени @weekly похожа на «0 0 4 * солнце». Это используется для выполнения еженедельных задач, таких как очистка системы и т. Д.
@weekly /bin/script.sh
Задача будет выполняться ежедневно. @daily timestamp аналогичен «0 2 * * *». Он выполняет задание на второй минуте каждого дня.
@daily /scripts/script.sh
Позволяет выполнять задачи ежечасно. @hourly timestamp аналогичен «0 * * * *». Эта команда выполняет задачу в первую минуту каждого часа.
@hourly /scripts/script.sh
Разрешает выполнение задач при перезагрузке системы. Выражение @reboot полезно для тех задач, которые система хочет запускать при запуске вашей системы. Это полезно для автоматического запуска задач в фоновом режиме.
@reboot /scripts/script.sh

Резюме:

  • Крон назван в честь греческого слова «Хронос», которое используется для обозначения времени.
  • Cronjobs помогает ОС выполнять запланированное резервное копирование файлов журнала или базы данных.
  • В системном пакете Linux есть полезный планировщик задач crontab, который можно запланировать для запуска автоматизированного процесса от имени пользователя root.
  • Crontab Linux имеет шесть полей. Первые пять полей определяют время и дату выполнения, а шестое поле используется для выполнения команды.