1.os.system #获取不到命令执行后的返回信息
eg:os.system('ls')
这个会直接给出结果,但是没有办法进行进一步的保存和处理
2.os.popen(cmd)
eg:str = os.popen("ls").read()
a = str.split("\n")
会得到['1.ini',
'XXX.txt',
'XXX.txt',
'AndroidStudioProjects']
3.使用subprocess模块
可以创建新的进程,可以与新建进程的输入/输出/错误管道连通,并可以获得新建进程执行的返回状态。
import subprocess
subprocess.call (["cmd", "arg1", "arg2"],shell=True)
#会直接打印出结果。
2、subprocess.Popen(cmd,shell=True,stdout=subprocess.PIPE,stderr=subprocess.PIPE)
# shell设为true,程序将通过shell来执行,如果command不是一个可执行文件,shell=True是必须的
# stdin, stdout, stderr分别表示程序的标准输入、输出、错误句柄。他们可以是PIPE,文件描述符或文件对象,也可以设置为None,表示从父进程继承。
# subprocess.PIPE实际上为文本流提供一个缓存区。
shell=True意思是shell下执行command
3.使用模块commands模块
import commands
网友评论