subprocess

import os
a = os.system("df -h")  # 执行状态,不可以获得返回结果
a = os.popen('df -h')
a.read()  # 可以获得返回结果,但没有执行状态

import subprocess
res = subprocess.run(["df", "-h"],stdout=subprocess.PIPE,stderr=subprocess.PIPE)  # 指定stdout和stderr才能获取结果,否则直接打印到标准输出
res.args
res.returncode
res.stderr
res.stdout
方法描述
run(args,shell,returncode)args传入参数["df","-h"],shell为true则args可以传入shell命令行,shell自己解析参数
call()返回命令的结果和执行状态,0或者非0
check_call()返回结果和状态,正常为0 ,执行错误则抛出异常
getstatusoutput()返回 一个元组(命令执行状态,执行结果)
getoutput()执行结果
check_output()执行结果,以自己的的形式
Popen()基础方法,以上方法都是对此方法的封装,以下是Popen方法返回对象的方法
poll()定时检查命令有没有执行完毕,完毕返回0,否则返回None
wait()等待命令执行完成,回结果状态
terminate()结束进程
pid子shell的pid
Popen参数描述
stdoutstdout=subprocess.PIPE,res.stdout.read()
stderrres.stdout.read()

参考:
https://blog.51cto.com/10983441/2389979?source=a
https://www.jb51.net/article/142787.htm

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值