Python经常需要用作系统脚本,调用cmd或者shell能够大大提高工作效率。
1. os.system
使用os.system是最简单直观的调用方法:
import os
cmd = 'ls'
os.system(cmd)
- 1
- 2
- 3
这个方法虽然简单,但有一个极大的缺点,无法获得cmd命令的输出。很难做进一步操作。对于’mv’,’cp’这种没有输出的命令行,可以首先推荐使用这个方法。而对于’ls’,’echo’等有输出的命令行,这个方法就不推荐使用了。
博主推荐指数:★★★★☆
2. os.popen
同样基于os模块来调用,但os.popen可以以字符串形式获得shell下的输出,实现如下:
import os
cmd = 'ls'
res = os.popen(cmd)
output_str = res.read() # 获得输出字符串
print(output_str)
- 1
- 2
- 3
- 4
- 5
使用os.popen可以获得输出,而且操作相对也比较简便。
博主推荐指数:★★★★★
3. subprocess.Popen
这种方法略复杂,而且目前还没有发现有什么太大的优势,所以本文不予介绍。等以后发现这种方法的优势时,博主再来加以补充。