Настройка cron происходит через оболочку unix. Прежде всего, вам нужно определить, какие программы вы хотите запустить, и узнать полный путь к ним на диске сервера. Для этого перейдите в каталог, где находится запущенная вами программа, и узнайте полный путь к этому каталогу с помощью команды  pwd  . Путь может выглядеть, например, как  /home/u12345/scripts/script.pl . Убедитесь, что файл, который вы запускаете, имеет права на чтение и выполнение  (r+x)  для владельца файла.

Вы можете изменить разрешения на необходимые вам с помощью команды:

chmod 750 script.pl

Далее выполните  команду crontab -e . Вы окажетесь в текстовом редакторе vi, где сможете ввести текст скрипта cron. Краткая информация о редакторе vi:

Чтобы вставить текст, нажмите i, затем введите текст.
Чтобы удалить символы, нажмите  ESC  , а затем введите x.
Чтобы выйти из vi без сохранения изменений, нажмите  ESC  , а затем введите : q !
Чтобы сохранить и выйти, нажмите  ESC  , а затем введите : wq.

Задания cron пишутся по одному в строке. После каждой строки, в том числе после последней или единственной, необходимо нажать enter – иначе задания не будут работать.

Задание cron выглядит как строка, в начале которой находятся пять обязательных полей для указания частоты выполнения задания, а затем следует команда, которую необходимо выполнить:

field1 field2 field3 field4 field5 command

 

Значения первых пяти полей:

  1. минуты – число от 0 до 59
  2. часы – число от 0 до 23
  3. день месяца – число от 1 до 31
  4. номер месяца в году – число от 1 до 12
  5. день недели – число от 0 до 7 (0-вс,1-пн,2-вт,3-ср,4-чт,5-пт,6-сб,7-вс)

Для каждого конкретного параметра можно указать несколько значений, разделенных запятыми. Например, если в поле «часы» написать 1,4,22, то задание будет запускаться в 1 час ночи, в 4 часа утра и в 10 часов вечера. Можно задать интервал — 4-9 будет означать, что программу нужно запускать каждый час в период с 4 до 9 часов включительно. Символ «*» означает «все возможные значения». Например, указание «*» в поле «часы» будет означать «запускать каждый час». Символ «/» используется для указания дополнительной периодичности выполнения задания. Например, «*/3» в поле «часы» означает «каждые три часа».

Вот как выглядит простой скрипт cron:

0 */3 * * 2,5 /home/u12345/script.pl

Скрипт  /home/u12345/script.pl  будет автоматически запускаться каждые три часа во вторник и пятницу. Введя такой скрипт в редакторе vi, выйдите с сохранением результатов редактирования и, если вы не допустили ошибок, задание будет выполняться с указанной периодичностью. Если при редактировании были допущены ошибки, cron уведомит вас о них.

Пример:

/tmp/crontab.xxxxxxx: 1 line, 9 characters.

crontab: installing a new crontab

"/tmp/crontab.xxxxxxx":1: bad minute

crontab: errors in crontab file, unable to install

Want to repeat the same edit?

Исправьте ошибки и попробуйте сохранить задачу еще раз. Вы можете просмотреть список уже установленных в cron скриптов с помощью команды  crontab -l:

-bash-2.05b$ crontab -l 0 */3 * * 2,5

/home/u12345/script.pl

Рекомендация: если вам необходимо запускать программу раз в день, особенно если для ее работы требуются большие ресурсы, запускайте эту задачу ночью, с 2 до 8 утра — нагрузка на серверы в это время минимальна. Ниже приведены примеры заданий cron. Надеемся, эта информация поможет вам лучше понять, как работает эта программа.

# perform the task once per hour for 0 minutes

0 */1 * * * /home/u12345/script.pl

#perform the task every three hours at 0 minutes

0 */3 * * * /home/u12345/script.pl

# complete the task on Mondays at 1:15 a.m.

15 1 * * 1 /home/u12345/script.pl

# complete the task on April 5 at 0 o'clock 1 minute every year

1 0 5 4 * /home/u12345/script.pl

# complete the task on Friday the 13th at 13:13

13 13 13 * 5 /home/u12345/script.pl

#complete the task every month on the 1st at 6:10 am

10 6 1 * * /home/u12345/script.pl