關于python調用cmd命令:
1、python的OS模塊
OS模塊調用CMD命令有兩種方式:os.popen()、os.system()都是用當前進程來調用。
OS.system是無法獲取返回值的。當運行結束后接著往下面執行程序。用法如:OS.system("ipconfig").
OS.popen帶返回值的,如何獲取返回值。如:
p=os.popen(cmd)
print p.read().得到的是個字符串。
這兩個都是用當前進程來調用,也就是說它們都是阻塞式的。
2、管道subprocess模塊
運行原理會在當前進程下面產生子進程。
sub=subprocess.Popen(cmd,shell=True,stdout=subprocess.PIPE) sub.wait() print?sub.read()
3、commands.getstatusoutput('cmd')
status?,output?=?commands.getstatusoutput('cmd') status?=?commands.getstatus('cmd') output?=?commands.getoutput('cmd')
顧名思義,status,output分別是執行的狀態和輸出結果,但是這種方法在windows中不能用。