码迷,mamicode.com
首页 > 其他好文 > 详细

dmidecode收集系统信息

时间:2016-12-21 03:11:25      阅读:151      评论:0      收藏:0      [点我收藏+]

标签:dmidecode收集系统信息

dmidecode收集系统信息


[root@133 systeminformation]# vim dmidecode_1.py
#!/usr/bin/env python                                                                                                                                                              
                                                                                                                                                                                   
from subprocess import Popen,PIPE                                                                                                                                                  
p = Popen([‘dmidecode‘],stdout=PIPE)                                                                                                                                               
data=p.stdout                                                                                                                                                                      
line_s = []   #定义一个空列表                                                                                                                                                                  
dmi = {}     #定义一个空字典                                                                                                                                                                      
                                                                                                                                                                                   
a = True              #设置标志位 a = True                                                                                                                                                             
while a:                                                                                                                                                                           
    line = data.readline()                                                                                                                                                         
    if line.startswith(‘System Information‘): #判断以System Information开头的段,                                                                                                                              
        while True:                                                                                                                                                                
            line = data.readline()                                                                                                                                                 
            if line == ‘\n‘:           #取该段落,直到有空行                                                                                                                                            
                a = False                                                                                                                                                          
                break                                                                                                                                                              
            else:                                                                                                                                                                  
                line_s.append(line)                                                                                                                                                
                                                                                                                                                                                   
                                                                                                                                                                                   
dmi_dic =  dict([i.strip().split(‘:‘) for i in line_s])  #把空格和换行符删除

                                                                                                                          
dmi[‘Manufacturer‘] = dmi_dic[‘Manufacturer‘].strip()  #打印key= Manufacturer的键值对                                                                                                                            
print dmi                                                                                                                                                                          
print {‘\n‘*20}                                                                                                                                                                                                                                                                                                                                                      
                                                                                                                                                                                   
for k,v in dmi_dic.items():   #打印以System Information开头的段,以key、value打印出来                                                                                                                                                     
    dmi[k] = v.strip()                                                                                                                                                             
print dmi   

[root@133 systeminformation]# python dmidecode_1.py 
{‘Manufacturer‘: ‘Dell Inc.‘}

set([‘\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n‘])

{‘SKU Number‘: ‘Not Specified‘, ‘UUID‘: ‘4C4C4544-0048-4210-8044-B4C04F543258‘, ‘Family‘: ‘Not Specified‘, ‘Serial Number‘: ‘4HBDT2X‘, ‘Version‘: ‘Not Specified‘, ‘Product Name‘: 
‘PowerEdge R710‘, ‘Wake-up Type‘: ‘Power Switch‘, ‘Manufacturer‘: ‘Dell Inc.‘}


注意:在Python里,以下这些对象相当于布尔值的False

空列表([] )

空元组(() )

空字典({} )

空字符串(‘‘ )

零值(0 )

特殊对象None

对象False

本文出自 “梅花香自苦寒来!” 博客,请务必保留此出处http://daixuan.blog.51cto.com/5426657/1884514

dmidecode收集系统信息

标签:dmidecode收集系统信息

原文地址:http://daixuan.blog.51cto.com/5426657/1884514

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!