目的:有時候需要一些系統的資訊或者執行不是python的檔案,這時候需要通過os模組呼叫它們。
環境:windows 7 python 3.5.3
情景:1)我通過python處理生成乙個系統可以直接執行的檔案,如bat批處理,需要執行它;
2)我對批處理比較熟悉,想要在python執行命令並獲得它的返回資訊。
這兩種情況都需要匯入os模組:
第一種情況:
os.open(file, flags[, mode]);
可以開啟系統中的檔案,引數如下:
mode -- 類似 chmod() , 這個引數在linux中常用,預設0777
返回新開啟檔案的描述符。
這裡舉兩個例子:
第一種情況:
類似open()操作文字檔案
1
2
with os.
open
(
'test.txt'
, os.o_rdwr|os.o_creat) as f:
os.write(f,
'this is a test.'
)
恩,就是這樣,用起來感覺比open()麻煩(私鏈)。
第二種情況:
os.popen(command[, mode[, bufsize]])
我想獲得當前的使用者名稱:
在windows 中 echo %username% 可以輸出當前的使用者名稱
1
user
=
os.popen(
' echo %username%'
).read()
恩,就是這樣,組合使用感覺還不錯。
python 呼叫系統命令
使用 os.system 呼叫系統命令 程式中無法獲得到輸出和返回值 import os os.system ls l proc cpuinfo os.system ls l proc cpuinfo r r r 1 root root 0 3月 29 16 53 proc cpuinfo 0使用 ...
python呼叫系統命令
1.os.system 例如 os.system ls 如果在命令列下執行,結果直接列印出來 裡面的引數即為dos命令。這樣的話是不能將得到的東西顯示出來的。但是如果是執行一些其他的操作dos操作的話應該可以實現的。2.為了能夠得到返回的結果集可以這樣來處理的 os.popen popen comm...
python 呼叫系統命令
僅僅在乙個子終端執行系統命令,而不能獲取命令執行後的返回資訊 如果再命令列下執行,結果直接列印出來 例如 import os os.system ls 輸出結果 chk err log.py cmdtool.log install log.txt install zabbix.sh manage d...