我正在使用 Python 并希望運行“editUtility”,如下所示。echo "Some data" | /opt/editUtility --append="configuration" --user=userid 14834851483485一些隨機數在哪里,也作為參數傳遞。我正在做的是通過Python“子進程”調用“editUtility”并傳遞參數,如下所示。proc = subprocess.Popen(['/opt/editUtility', '--append=configuration'],stdout=subprocess.PIPE) lsOutput="" while True: line = proc.stdout.readline() lsOutput += line.decode() if not line: break print(lsOutput)我的問題是:如何傳遞上面提到的所有參數以及如何將“回顯“某些數據”以及管道符號與子進程調用一起擬合?
1 回答

慕桂英3389331
TA貢獻2036條經驗 獲得超8個贊
所以如果你只是想輸入一個字符串然后讀取進程的輸出直到結束Popen.communicate就可以使用:
cmd = [
'/opt/editUtility',
'--append=configuration',
'--user=userid',
'1483485'
]
proc = subprocess.Popen(
cmd,
stdin=subprocess.PIPE,
stdout=subprocess.PIPE,
stderr=subprocess.PIPE
)
(stdoutData, stderrData) = proc.communicate('Some data')
添加回答
舉報
0/150
提交
取消