2015-12-07 3 views
3

У меня есть cronjob, который является следующим:Cronjob: Команда не найдены

*/10 * * * * root cd /some/directory && python3 FILE.py >> Output.txt 2>&1 

если я запустить эту команду из обычной командной строки, он отлично работает. Но когда выбежала из cronjob, я получаю /bin/sh: python3: not found

Но когда я бегу echo $PATH возвращается

/sbin:/bin:/usr/sbin:/usr/bin:/usr/syno/sbin:/usr/syno/bin:/usr/local/sbin:/usr/local/bin:/usr/local/python3/bin:/opt/bin 

(Обратите внимание, что /usr/local/python3/bin включен в этот каталог

Как это исправить?

ответ

3

Кажется, что cronjob имеет другую среду, чем ваша интерактивная оболочка. Вы можете отредактировать cronjob, чтобы использовать абсолютный путь для вызова этого скрипта python. Или вы можете написать сценарий оболочки sh, чтобы точно настроить t его окружение, требуемое скриптом python, и выполнить cronjob.

https://askubuntu.com/questions/23009/reasons-why-crontab-does-not-work

Смежные вопросы