执行系统命令
os.system方法
import os
os.system(cmd)
os.popen方法
import os
os.popen(cmd)
commands模块
import commands
status, output = commands.getstatusoutput(cmd)
# getoutput 获取执行命令后的返回信息
# getstatus 获取执行命令的状态值(执行命令成功返回数值0,否则返回非0)
# getstatusoutput 获取执行命令的状态值以及返回信息
注意1:在类unix的系统下使用此方法返回的返回值(status)与脚本或命令执行之后的返回值不等,这是因为调用了os.wait()的缘故,具体原因就得去了解下系统wait()的实现了。需要正确的返回值(status),只需要对返回值进行右移8位操作就可以了。
注意2:当执行命令的参数或者返回中包含了中文文字,那么建议使用subprocess。
subprocess模块
import subprocess
nowtime = subprocess.Popen('date', shell=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
print(nowtime.stdout.read())
参考
分享四种执行python系统命令的方法