最近在做那個測試框架的時候發現 python 的另乙個獲得系統執行命令的返回值和輸出的類。
最開始的時候用 python 學會了 os.system() 這個方法是很多比如 c,perl 相似的。
os.system('cat /proc/cpuinfo')
但是這樣是無法獲得到輸出和返回值的,繼續 google,之後學會了 os.popen()。
output = os.popen('cat /proc/cpuinfo')
print output.read()
通過 os.popen() 返回的是 file read 的物件,對其進行讀取 read() 的操作可以看到執行的輸出。但是怎麼讀取程式執行的返回值呢,當然咯繼續請教偉大的 google(聯想到像我這樣的人工作如果離開了 google,不是成了廢物。。。baidu 忽視)。google 給我指向了 commands — utilities for running commands
。這樣通過 commands.getstatusoutput() 乙個方法就可以獲得到返回值和輸出,非常好用。
(status, output) = commands.getstatusoutput('cat /proc/cpuinfo')
print status, output
python document 中給的乙個例子,很清楚的給出了各方法的返回。
>>> import commands
>>> commands.getstatusoutput('ls /bin/ls')
(0, '/bin/ls')
>>> commands.getstatusoutput('cat /bin/junk')
(256, 'cat: /bin/junk: no such file or directory')
>>> commands.getstatusoutput('/bin/junk')
(256, 'sh: /bin/junk: not found')
>>> commands.getoutput('ls /bin/ls')
'/bin/ls'
>>> commands.getstatus('/bin/ls')
'-rwxr-xr-x 1 root 13352 oct 14 1994 /bin/ls'
Python執行系統命令的方法
python中執行系統命令常見方法有兩種 兩者均需 import os 1 os.system 僅僅在乙個子終端執行系統命令,而不能獲取命令執行後的返回資訊 system command exit status execute the command a string in a subshell.如...
python執行系統命令的方法
做為系統工程師來說,經常會用到python指令碼去呼叫一下系統命令,現把經常使用的集中呼叫方法總結如下 一,os.system command 在乙個子shell中執行command命令,並返回command命令執行完畢後的退出狀態。這個函式執行命令的結果無法儲存,只能顯示在標準輸出。但是,命令執行...
python執行系統命令的方法有哪些?
python是一款操作簡單的程式語言,內建豐富的庫,能夠很容易的實現強大的功能,在使用python進行框架搭建時,往往需要用到python執行系統命令,一些開發人員對此不熟悉,以下是具體的操作方法 1.os.system 這個方法直接呼叫標準c的system 函式,僅僅在乙個子終端執行系統命令,而不...