Как проверить, работает ли задание крона или нет?

Я включил следующую команду crontab -e:

15 * * * * php /home/rizwan/PHP-workspace/mgstore/testcron.php

Я должен работать testcron.php каждые 15 минут; для тестирования я использовал следующий код PHP в testcron.php:

<?php 
echo "test";
0
задан 23 July 2015 в 14:46

3 ответа

15 * * * * /usr/bin/php /home/rizwan/PHP-workspace/mgstore/testcron.php >> /home/rizwan/cron.out 

это работало .but, у меня есть один сценарий PHP для добавления клиентов от магнето до ERP, когда я запускаю скрипт вручную, это просит авторизацию после принятия, что это создает клиентов в ERP от магнето, мне нужно каждый раз, когда я добавил клиента в магнето после 5 или 10 минут, этот сценарий должен выполнить и добавить клиента к ERP.how, это может быть сделано?, Если у кого-либо есть какая-либо идея, помогите?

1
ответ дан 3 October 2019 в 23:58

Сначала, несомненно, необходимо будет выполнить исполняемый файл полным путем. можно получить путь с помощью which команда

$ which php
/usr/bin/php

Теперь, запись в crontab должна быть:

15 * * * * /usr/bin/php /home/rizwan/PHP-workspace/mgstore/testcron.php

Теперь Для проверки вывода можно использовать прием перенаправления, так перенаправьте вывод в некоторый файл, и затем можно проверить файл для наблюдения результата. Таким образом, запись была бы:

15 * * * * /usr/bin/php /home/rizwan/PHP-workspace/mgstore/testcron.php >> /home/rizwan/cron.out

Теперь можно проверить файл в домашнее именованное cron.out и видеть если выполненный крон или нет.

0
ответ дан 3 October 2019 в 23:58

В PHP Вы можно использовать или оператор обратной галочки или эти shell_exec() функция для выполнения команды в оболочке системы по умолчанию; Вы могли выполнить pgrep 'php /home/rizwan/PHP-workspace/mgstore/testcron.php' и оценить его код возврата; любой это:

<?php
    if(!($PID = `pgrep 'php /home/rizwan/PHP-workspace/mgstore/testcron.php'`))
        echo 'Process is running with PID ' . $PID . '.';
?>

Или это:

<?php
    if(!($PID = shell_exec("pgrep 'php /home/rizwan/PHP-workspace/mgstore/testcron.php'")))
        echo 'Process is running with PID ' . $PID . '.';
?>
0
ответ дан 3 October 2019 в 23:58

Другие вопросы по тегам:

Похожие вопросы: