from subprocess import PIPE, Popen
返回的是 Popen 实例对象
proc = Popen(
‘taskkill /f /im et.exe’, # cmd特定的查询空间的命令
stdin=None, # 标准输入 键盘
stdout=PIPE, # -1 标准输出(演示器、终端) 保存到管道中以便进行操作
stderr=PIPE, # 标准错误,保存到管道
shell=True)
print(proc.communicate()) # 标准输出的字符串+标准错误的字符串
outinfo, errinfo = proc.communicate()
如果命令执行出错,则输出错误信息
if proc.returncode != 0:
err_info = errinfo.decode(‘gbk’)
err_info_cn = ‘\n’.join(line for line in err_info.splitlines() if line.strip())
print(err_info_cn)
else:
out_info = outinfo.decode(‘gbk’)
## 去掉空行并重新组合字符串
out_info_cn = ‘\n’.join(line for line in out_info.splitlines() if line.strip())
print(out_info_cn)