1
在我的Python代碼,我有在python執行shell命令文件作爲標準輸入
executable_filepath = '/home/user/executable'
input_filepath = '/home/user/file.in'
我要分析的輸出我會在外殼得到命令
/home/user/executable </home/user/file.in
我試過
command = executable_filepath + ' <' + input_filepath
p = subprocess.Popen([command], stdout=subprocess.PIPE)
p.wait()
output = p.stdout.read()
但它不起作用。我現在能想到的唯一解決方案是創建另一個管道,並通過它複製輸入文件,但必須有一個簡單的方法。
調用'.wait()''之前.stdout.read()'會導致如果子進程死鎖產生足夠的輸出。 – jfs