我需要使用python執行shell腳本。 shell程序的輸出是一個文本文件。腳本沒有輸入。幫我解決這個問題。編寫文件的shell程序的subprocess.call()
def invokescript(shfile):
s=subprocess.Popen(["./Script1.sh"],stderr=subprocess.PIPE,stdin=subprocess.PIPE);
return;
invokescript("Script1.sh");
關於使用上面的代碼,我收到以下錯誤。
Traceback (most recent call last):
File "./test4.py", line 12, in <module>
invokescript("Script1.sh");
File "./test4.py", line 8, in invokescript
s=subprocess.Popen(["./Script1.sh"],stderr=subprocess.PIPE,stdin=subprocess.PIPE);
File "/usr/lib/python2.7/subprocess.py", line 679, in __init__
errread, errwrite)
File "/usr/lib/python2.7/subprocess.py", line 1249, in _execute_child
raise child_exception
OSError: [Errno 8] Exec format error
在此先感謝...
可能會複製:http://stackoverflow.com/questions/4834483/is-this-the-right-way-to-run-a-shell-script-inside-python – atupal
在Python中不需要分號 – codeape
ITYM 's = subprocess.Popen([shfile],...)'。否則,你將不需要該參數。 – glglgl