python獲取命令列輸出結果,並對結果進行過濾找到自己需要的!
這裡以獲取本機mac位址和ip位址為例!
# coding: gb2312
import os, re
# execute command, and return the output
def execcmd(cmd):
r = os.popen(cmd)
text = r.read()
r.close()
retu程式設計客棧rn text
# write "data" to file-filename
def writefile(filename, data):
f = open(filename, "w")
f.write(data)
f.close()
# 獲取計算機mac位址和ip位址
if __name__ == '__main__':
cmd = "ipconfig /all"
result = execcmd(cmd)
pat1 = "physical address[\. ]+: ([\w-]+)"
pat2 = "ip address[\. ]+: ([\.\d]+)"
macwww.cppcns.com = re.findall(pat1, result)[0] # 找到mac
ip = re.findall(pat2, result)[0] # 找到ip
print("mac=%s, ip=%s" %(mac, ip))
執行結果:
e:\program\python>del.py程式設計客棧
mawww.cppcns.comc=00-1bvugab-77-cd-62-2b, ip=192.168.1.110
e:\program\python>
python獲取實時命令列輸出
我們平時用os.system和subprocess執行命令並獲取返回值,但獲取返回值都是在命令完全執行完畢後,如果命令持續輸出不會結束,該如何獲取實時輸出呢?exer16.py import time def fun for i in range 6 print format i time.slee...
python入門 獲取命令列輸入
獲取命令列輸入 argv.py import sys for item in sys.argv print item 有兩種呼叫方式 python argv.py first second argv.py first second 輸出 argv.py first second 可以把 for迴圈的...
python實現命令列互動
最近因為工作需求在寫自動化測試指令碼,主要目的是測試 功能的完整性,然而在使用sshlibrary庫進行遠端ssh互動的時候總是出現問題,比如說遇到需要輸入密碼的互動,總是不能成功,還有遇到一直保持執行並實時輸出的命令,也無法讀取其中的輸出。所以就只能使用python實現指令碼進行互動,和ssh解耦...