Python獲取電腦硬體資訊及狀態的實現方法

NO IMAGE

本文以例項形式展示了Python獲取電腦硬體資訊及狀態的實現方法,是Python程式設計中很有實用價值的技巧。分享給大家供大家參考之用。具體方法如下:

主要功能程式碼如下:


#!/usr/bin/env python
# encoding: utf-8
from optparse import OptionParser
import os
import re
import json
def main():
try:
parser = OptionParser(usage="%prog [options]")
reg_result=re.compile('\[(.*)\]')
#add option
parser.add_option("-m","--machine",action="store",type="string",dest="machine",help="the machine to be check")
parser.add_option("-f","--file",action="store",type="string",dest="file",help="the file with machine list")
parser.add_option("-n","--noah_path",action="store",type="string",dest="noah",help="the bns path or group")
(options,args)=parser.parse_args()
result=""
if options.machine:
options.machine=options.machine.replace(".baidu.com","")
result=os.popen("meta-query entity host " options.machine " -f sysSuit,memTotal,diskTotal,cpuFrequency,cpuPhysicalCores,netIdc,status -j").read()
elif options.file:
result=os.popen("meta-query entity host -f sysSuit,memTotal,diskTotal,cpuFrequency,cpuPhysicalCores,netIdc,status -F " options.file " -j").read()
elif options.noah:
result=os.popen("get_instance_by_service " options.noah " |meta-query entity host -f sysSuit,memTotal,diskTotal,cpuFrequency,cpuPhysicalCores,netIdc,status -F -j").read()
else:
return
result=json.loads(result)
print "%-*s%-*s%-*s%-*s%-*s%-*s"%(40,"Name",10,"CPU",10,"memery",10,"disk",10,"IDC",10,"status")
for item in result:
if item['Values']['cpuFrequency']!="null":
item['Values']['cpuFrequency']=str(float(item['Values']['cpuFrequency'])/1000.0)[0:3]
else:
item['Values']['cpuFrequency']="0"
item['Values']['diskTotal']=str(float(item['Values']['diskTotal'])/1000000000.0)[0:5]
item['Values']['memTotal']=str(float(item['Values']['memTotal'])/1024/1000.0)[0:5]
print "%-*s%-*s%-*s%-*s%-*s%-*s" % (40,item['Name'],10,item['Values']['cpuFrequency'] " x" item['Values']['cpuPhysicalCores'],10,item['Values']['memTotal'] "G",10,item['Values']['diskTotal'] "T",10,item['Values']['netIdc'],10,item['Values']['status'])
except Exception,e:
return
if __name__ =="__main__":
main()

希望本文所述對大家Python程式設計的學習有所幫助。

您可能感興趣的文章:

python獲取各作業系統硬體資訊的方法python如何獲取伺服器硬體資訊Python實現的讀取電腦硬體資訊功能示例python執行shell獲取硬體引數寫入mysql的方法Python實現掃描區域網活動ip(掃描線上電腦)Python簡單實現控制電腦的方法Python實現讀取機器硬體資訊的方法示例