Сбой задания Cron при выполнении python скрипта с подпроцессом - PullRequest
0 голосов
/ 19 июня 2020

Мой cron работает нормально, когда он настроен следующим образом:

* * * * * usr/local/bin/python3 /Users/username/path/to/my/script1.py
* * * * * bash -c -l "/Users/username//path/to/my/script2.sh"

Когда я запускаю вышеуказанные скрипты вручную в терминале, как это, он также работает:

usr/local/bin/python3 /Users/username/path/to/my/script1.py
sh /Users/username//path/to/my/script2.sh

Однако когда я пытаюсь запустить оба сценария в качестве подпроцесса в сценарии parent.py, запланированном как задание cron, он не сработает и выдаст эту ошибку:

/bin/sh: usr/local/bin/python3: No such file or directory

Мой код parent.py:

import subprocess

subprocess.run('usr/local/bin/python3 /Users/username/path/to/my/script1.py && sh /Users/username//path/to/my/script2.sh', shell=True)

однако, когда я запускаю parent.py вручную в таком терминале, он работает нормально:

usr/local/bin/python3 /Users/username/path/to/my/parent.py

Я пробовал добавить #!/usr/local/bin/python3 в свой parent.py, но этого не произошло. помогите.

Может ли кто-нибудь помочь с этим? Заранее спасибо.

1 Ответ

1 голос
/ 20 июня 2020

Вам не хватает sla sh перед usr / local / python3!

Это должно быть / usr / local / python3

См. this подробнее.

...