我想通過subprocess實時獲取腳本的輸出內容 下面是我的腳本
test_echo.py
import timefor i in range(10):
print(i)
time.sleep(0.5)
下面是讀取的腳本:
腳本名字get_output.py
import subprocess
cmd = '/root/test_echo.py'p = subprocess.Popen(['python',cmd],stdout=subprocess.PIPE, stderr=subprocess.STDOUT,bufsize=1)while 1:
line = p.stdout.readline()
if line != '' and p.poll() is None:
print line
else:
break
我用pycharm調試上面的內容可以正常的逐行(實時)讀取test_echo的內容,但是我把腳本放到centos或者mac上的shell環境下通過python get_output.py它就不能逐行讀取,而是等test_echo.py的結果執行完一下 輸出的, 我想知道怎么才能在終端里面也能像pycharm里面一樣逐行讀取,還是需要怎么配置subprocess
添加回答
舉報
0/150
提交
取消