Назад | Перейти на главную страницу

разница между / usr / bin / php и php в crontab

В чем разница между указанием «/ usr / bin / php» и просто использованием «php» при настройке PHP-скрипта для запуска в моем crontab? Я бы предпочел использовать «php», а не полный путь.

30 16 * * *  php /var/www/vhosts/dev_crm/cron/picco.php >> /home/crmpicco/cron-picco.log 2>&1

или

30 16 * * *  /usr/bin/php /var/www/vhosts/dev_crm/cron/picco.php >> /home/crmpicco/cron-picco.log 2>&1

Спасибо.

Кто управляет этим кронтабом?

Он может запускаться другим пользователем, у которого нет / usr / bin в его $ PATH, или он может работать с измененной средой, равно как и без / usr / bin в его $ PATH.

В случае сомнений укажите полный путь.

Разница в том, что первый crontab работать не будет :)

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

При необходимости вы можете снова объявить переменную перед командой:

30 16 * * *  PATH=/usr/bin/ php /var/www/vhosts/dev_crm/cron/picco.php >> /home/crmpicco/cron-picco.log 2>&1