os.system():輸出結果到螢幕上,回傳輸出指令的狀態,結果為0表示輸出正確
os.popen()儲存輸出的結果
import subprocess #這個模組是為了取代一些舊的模組,例如os. system等,通常在linux下比較好用一些
subprocess.call()
上面的範例說明,如果不涉及管道,直接用列表的形式就可以完成,否則得加上shell=True參數
subprocess.check_call():#檢查回傳狀態
subprocess.getstatusoutput()#傳回狀態與結果
#subprocess三種狀態。 stdout,stdin,stderr
>>>res=subprocess.Popen("ifconfig|grep192",shell=True,stdout=subprocess.PIPE,stderr=subprocess. PIPE,stdin=subprocess.PIPE)
##>>> res.stdout.read()'inet addr:192.168.1.210 Bcast:192.168.1.255 Mask:255.255. \n'針對上面的指令,要讀出結果,就得用res.stdout.read()格式也可以唸出錯誤res.poll ()可以回到狀態,0表示指令執行正確 res.terminate()可以殺死res進程下面的句子中,可以加入cwd :用於設定子程序的目前目錄,env用於設定子程序的環境#>>>res=subprocess.Popen("sleep6;echo 'hello'",shell=True,stdout=subprocess.PIPE,stderr=subprocess.PIPE,stdin=subprocess.PIPE,cwd=”/tmp”)
以上是subprocess模組的詳細介紹的詳細內容。更多資訊請關注PHP中文網其他相關文章!