天天看點

【python】python調用shell方法

python中調用shell的兩種方式

在python腳本中,有時候需要調用shell擷取一下資訊,下面介紹兩種常用的調用方法。

第一種,os.system()

這個函數擷取的是指令的執行狀态,比如

>>> import os
>>> a = os.system('echo 123')
123
>>> print a
0
>>>       

變量a的值是“echo 123”這個指令的執行狀态,成功或者失敗,不是這個指令的輸出。

第二種,os.popen()

這個函數擷取的是指令的輸出,比如

>>> import os
>>> a = os.popen('echo 123')
>>> print a
<open file 'echo 123', mode 'r' at 0x7fb6e28eeed0>
>>> a = os.popen('echo 123').read()
>>> print a
123

>>>       

變量a的值是“echo 123”這個指令的輸出。

注意:上面的第一次print a的結果是不對的,原因為此時a的值是一個記憶體位置,不是真正的值,需要使用read()來讀取記憶體中的内容,是以在第二次print的時候,加了read,才是真正想要的結果。

原創作者:鄭立賽

郵箱:[email protected]

歡迎關注我們的公衆号擷取最新文章:運維自動化開發

【python】python調用shell方法
【python】python調用shell方法