Я пытаюсь:Не удается запустить скрипт linux .sh с подпроцессом python?
import subprocess
subprocess.call(["file.sh"])
Но я получаю:
Traceback (most recent call last):
File "project.py", line 85, in <module>
subprocess.call(["file.sh"])
File "/usr/local/lib/python2.7/subprocess.py", line 522, in call
return Popen(*popenargs, **kwargs).wait()
File "/usr/local/lib/python2.7/subprocess.py", line 710, in __init__
errread, errwrite)
File "/usr/local/lib/python2.7/subprocess.py", line 1335, in _execute_child
raise child_exception
OSError: [Errno 2] No such file or directory
Однако, когда я пытаюсь запустить скрипт из командной строки bash file.sh
это работает. Поэтому я смущен, почему это не работает?
Я не привержен использованию подпроцесса, поэтому, если есть другие варианты, пожалуйста, дайте мне знать.
ли 'file.sh' (в отличие от' Баш file.sh') работать из командной строки? Нет? Почему вы ожидаете, что 'subprocess.call ([" file.sh "])' будет работать? –
Я просто попытался добавить '([" bash file.sh "])' и точно такой же результат. – RoryGillum