Найти тему

Crontab или зачем мне ежедневник

Оглавление

В прошлой статье я рассказывал о том что такое CRON в операционных системах семейства UNIX. Если кто-то не успел ознакомиться, то вот ссылка на ту статью LINUX & Cron или все что надо знать о автоматическом запуске скриптов .

Но сам по себе CRON - это всего лишь приложение, которое запускает нужные нам скрипты. А где же находятся все правила по которым должны запускаться скрипты? И где, собственно, прописывать все эти скрипты? Вот именно на эти ответы я и хотел бы ответить сегодня в этой статье.

Как я уже ранее говорил CRON работает с файликом, под названием crontab

Данный фал находится по пути

/var/spool/cron/crontabs/{имя пользователя}
где {имя пользователя} - это имя пользователя из под учетной записи которого будут выполняться скрипты
В конце данного файла обязательно должна быть пуская строка (можно несколько)

Но как правильно записывать туда данные? У меня и на это есть ответ.

Структура файла CRONTAB

Как правило, структура файла crontab выглядит следующим образом

* * * * * {command}, где
| | | | | |_ команда которая будет исполнена
| | | | |__ день недели (0—7) (воскресенье = 0 или 7)
| | | |____ месяц (1-12)
| | |_______ день (1-31)
| |_________ час (0-23)
|____________ минута (0-59)

Таким образом, если вы хотите запускать свой скрипт еженедельно по средам 23-15, тогда вам надо написать в crontab следующее

15 23 * * 3 {адрес скрипта начиная от корневой директории}

Дополнительные возможности CRONTAB

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

* каждый раз
, разделитель нескольких значений (например запуск в 3,4,5 часов)
- указатель диапазона времени (с 3 до 5 можно записать как 3-5)
/ указатель шага повтора (например каждые 15 минут - */15 )
@yearly раз в год
@annually ежегодно
@monthly ежемесячно
@weekly еженедельно
@daily ежедневно
@hourly ежечасно
@reboot при каждой перезагрузке


Спасибо за внимание.

Не забывайте подписываться на канал и ставить пальцы вверх ;)

Жду ваших замечаний и предложений в комментариях.

Если хотите раскрыть какую либо тему администрирования LINUX или WEB-разработки также оставляйте свои комментарии, по мере набора голосов я смогу опубликовать статью или мануал. Всем спасибо.