import subprocess
"""
subprocess是运行子进程的模块
"""
obj=subprocess.Popen('echo 123 ; ls / ; ls /root',shell=True,
stdout=subprocess.PIPE,
stderr=subprocess.PIPE,
)
"""
运行三条命令:
echo 123 打印123
ls / 打印根目录下的文件内容
ls /root 打印根目录下root目录下的文件内容
使用shell来运行
stdout 将输出的内容投送到subprocess.PIPE该管道,没有出错赋值给stdout
stderr 将输出的内容投送到subprocess.PIPE该管道,运行出错赋值给stderr
"""
print(obj)
# 打印子进程对象
res=obj.stdout.read() #读取子进程对象中正常输出管道里的内容
print(res.decode('utf-8')) #输出为bytes类型,根据操作系统默认编码做解码操作
#windows一般为gbk,linux一般为utf-8
err_res=obj.stderr.read() #读取子进程对象中错误输出管道里的内容
print(err_res.decode('utf-8')) #同样根据操作系统默认编码来解码
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY