Korchy (korchy) wrote,
Korchy
korchy

Category:

Выполнение скриптов PHP через планировщик Cron

1. Просмотр уже имеющихся заданий cron:

crontab -l

2. Добавление новых заданий в cron:

crontab -e

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

3. Формат записи заданий в cron:

* * * * * выполняемая команда
- - - - -
| | | | |
| | | | ----- День недели (0 - 7) (Воскресенье =0 или =7)
| | | ------- Месяц (1 - 12)
| | --------- День (1 - 31)
| ----------- Час (0 - 23)
------------- Минута (0 - 59)

Если ставится число - это означает что в момент наступления этого числа будет выполнена команда планировщика.

Например:
5 0 * * * команда
"команда" будет выполнена каждый день в 0 часов 5 минут.

Для выполнения команды через промежуток времени используется слеш.

Например:

*/1 * * * * команда
"команда" будет выполняться через одну минуту (каждую минуту) с момента запуска cron.

(!) Каждая команда должна располагаться на новой строчке. После последней команды должен идти перенос строки.

4. Ошибки, возникающие при выполнении команд через cron отправляются в файл почты /var/mail/root

Чтобы ошибки выводились в отдельный файл, его можно указать в строке с командой:

*/1 * * * * команда 2>/tmp/cron.tmp
Ошибки будут помещаться в файл /tmp/cron.tmp

5. Команды для выполнения скриптов PHP пишутся через интерпритатор PHP:

*/1 * * * * /usr/bin/php -q /var/www/test.php

test.php будет выполняться каждую минуту.

(!) Если в скриптах php используется команда include с относительным путем в скрипте должно быть указание на домашнюю директорию командой:

chdir('/var/www'); // "Домашней" считается директория /var/www

6. Перезапуск cron

/etc/init.d/cron restart
Tags: admin, debian
Subscribe

  • Сервер B3D Interplanety в discord

    Сервер B3D Interplanety в Discord. Для обсуждения вопросов по Blender, его API, разработки скриптов и аддонов. Вопросы, не относящиеся…

  • Аддон Blender "Select-UP" v. 1.2.0.

    Обновление аддона "Select-UP" до версии 1.2.0. Добавлено выделение в зависимости от парентинга объектов Читать дальше:…

  • Оператор для скрытия объекта во всех сценах

    Для того, чтобы скрыть объект в окне 3D Viewport только для текущей сцены мы все пользуемся оператором object.hide_view_set, вызов которого…

Comments for this post were disabled by the author