一、os.system方法
os.system()的返回值,如果执行成功,那么会返回0,表示命令执行成功。否则,则是执行错误。
import os
# 结果返回0,在当前文件夹下创建test文件夹
print(os.system("mkdir -p test"))
# 结果返回0,但是无法查看该命令的执行结果
print(os.system("ls"))
二、os.popen方法
- os.popen()方法不仅执行命令而且返回执行后的信息对象(常用于需要获取执行命令后的返回信息),是通过一个管道文件将结果返回。通过os.popen() 返回的是 file read 的对象,对其进行读取 read() 的操作可以看到执行的输出。
需要查看内容:
import os
# 返回的是一个文件对象
re = os.popen("ls")
# 通过文件的read()读取所返回的内容
obtain = re.read()
# 关闭
re.close()
print(obtain)
print(len(obtain))
print(obtain.split())
结果:
总结:
- 对于哪些没有返回值的shell命令,建议使用 os.system()
- 对于哪些有返回值的shell命令,建议使用 os.popen()