python subprocess pipe 實時輸出日志的操作
* test11.py
import time print "1" time.sleep(2) print "1" time.sleep(2) print "1" time.sleep(2) print "1"
* test.py
import subprocess
p = subprocess.Popen("python test11.py", shell=True, stdout=subprocess.PIPE)
# None表示正在執(zhí)行中
while p.poll() is None: <br> out = p.stdout.readline() <br> if out != "": <br> print out
補充知識:python 通過 subprocess.Popen執(zhí)行命令,重定向實時輸出
執(zhí)行命令
import subprocess
import sys
# 常用編碼
GBK = 'gbk'
UTF8 = 'utf-8'
# 解碼方式,一般 py 文件執(zhí)行為utf-8 ,cmd 命令為 gbk
current_encoding = GBK
popen = subprocess.Popen('ping www.baidu.com', shell = True,
stdout = subprocess.PIPE,
stderr = subprocess.PIPE,
bufsize = 1)
out,err = popen.communicate()
print('std_out: ' + out)
print('std_err: ' + err)
print('returncode: ' + str(popen.returncode))
執(zhí)行 .py文件
import subprocess
import sys
# 常用編碼
GBK = 'gbk'
UTF8 = 'utf-8'
current_encoding = UTF8
popen = subprocess.Popen('python D:\code\test.py',
stdout = subprocess.PIPE,
stderr = subprocess.PIPE,
bufsize = 1)
out,err = popen.communicate()
print('std_out: ' + out)
print('std_err: ' + err)
print('returncode: ' + str(popen.returncode))
以上這篇python subprocess pipe 實時輸出日志的操作就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
python中Ansible模塊的Playbook的具體使用
這篇文章主要介紹了python中Ansible模塊的Playbook的具體使用,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-05-05
Python統(tǒng)計可散列的對象之容器Counter詳解
Counter是一個容器,可以跟蹤等效值增加的次數(shù).這個類可以用來實現(xiàn)其他語言中常用包或多集合數(shù)據(jù)結構實現(xiàn)的算法.本篇文章非常詳細的介紹了容器Counter的使用方式,需要的朋友可以參考下2021-05-05
python 兩個數(shù)據(jù)庫postgresql對比
這篇文章主要介紹了python 兩個數(shù)據(jù)庫postgresql對比,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2019-10-10
python使用aiohttp通過設置代理爬取基金數(shù)據(jù)簡單示例
這篇文章主要為大家介紹了python使用aiohttp通過設置代理爬取基金數(shù)據(jù)簡單示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-06-06
Python實現(xiàn)監(jiān)控一個程序的運行情況
這篇文章主要為大家介紹了Python如何實現(xiàn)監(jiān)控一個程序的運行情況,然后視情況將進程殺死并重啟,文中的示例代碼簡潔易懂,需要的可以參考一下2023-05-05

