python如何获取服务器硬件信息


Posted in Python onMay 11, 2017

本文实例为大家分享了Android九宫格图片展示的具体代码,供大家参考,具体内容如下

#!/usr/bin/env python
# -*- coding: utf-8 -*-
import rlcompleter, readline
readline.parse_and_bind('tab: complete')
import dmidecode
import  time
import  os
import  re
system=dmidecode.system()
print "\033[1;36;40m%s\033[0m" %"获取服务器硬件信息"
for x,y in system.items():
for i in y['data'].items():
if i[0] == 'Product Name':
print "\033[1;31;40m%s\033[0m" % "-"*10
print 'Server models: %s' %i[1]  
print i
 
print "\033[1;36;40m%s\033[0m" % "获取服务器CPU信息"
for x,y in dmidecode.processor().items():
  for m,n in y.items():
  if m=='data':
print "\033[1;31;40m%s\033[0m" % "-"*10
  for x,y in n.items():
    print x,y
print "\033[1;36;40m%s\033[0m" %"获取服务器BIOS信息"
for x,y in dmidecode.bios().items():
for m,n in y['data'].items():
  if m.find('Characteristic')!=-1:
    for x,y in n.items():
    print "\033[1;34;40m%s\033[0m" % "-"*10
    print x,y
  else:
    print "\033[1;32;40m%s\033[0m" % "-"*10
    print m,n
print "\033[1;36;40m%s\033[0m" %"获取服务器内存信息"
for x,y in dmidecode.memory().items():
  for m,n in y['data'].items():
    print "\033[1;34;40m%s\033[0m" % "-"*10
    print m,n
#便于调试,可以删除
print "x"*50
print "\033[1;36;40m%s\033[0m" %"获取服务器主板信息"
for x,y in dmidecode.baseboard().items():
  #print x,y
  for m,n in y['data'].items():
    print "\033[1;34;40m%s\033[0m" % "-"*10
    print m,n
print "\033[1;36;40m%s\033[0m" %"获取服务器主板插槽信息"
for x,y in dmidecode.slot().items():
  for m,n in y['data'].items():
    print "\033[1;34;40m%s\033[0m" % "-"*10
    print m,n
print "\033[1;36;40m%s\033[0m" %"获取服务器网卡信息"
"""
安装linux硬件信息收集工具包
  """
#os.system('yum -y install make wget gcc* ;wget http://ezix.org/software/files/lshw-B.02.14.tar.gz ; tar -zxvf lshw-B.02.14
.tar.gz ;cd lshw-B.02.14 ; make && make install ; cd .. ; rm -rf lshw-B.02.14* ')
netcard=os.popen('lshw -C network  ').read( )
print "产品名称: %s"     % re.findall('product:.+(?#测试)',netcard)[0]
print "网卡速度: %s"     % re.findall('size:.+(?#测试)',netcard)[0]
n=len(re.findall('\*-network:',netcard))
if n==0:
  print "网卡IP地址: %s"     %re.findall('ip=\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}',netcard)[0] 
else:
  for i in range(0,n):
     try:
      print "网卡IP地址: %s" %re.findall('ip=\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}',netcard)[i]
    except IndexError:
      i+=1
      print "第%s块网卡没有IP地址" %i 
#print "网卡IP地址: %s"    % re.findall('ip=\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}',netcard)[0]
print "网卡状态: %s "    % re.findall('link=\w{3}(?#测试)',netcard)[0]
print "网卡MAC地址: %s "   % re.findall('serial:.+(?#测试)',netcard)[0]
print "网卡厂家: %s "    % re.findall('vendor:.+(?#测试)',netcard)[0]
print "网络接口名称: %s"   % re.findall('logical name:.+(?#测试)',netcard)[0]
"""
获取系统信息
"""
print "\033[1;36;40m%s\033[0m" %"获取服务器操作系统信息"
import platform
print "系统cpu位数: %s " % platform.processor()
print "系统信息: %s "   % platform.system()
print "操作系统类型: %s" % platform.dist()[0]
print "系统主机名: %s "  % platform.node()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python Property属性的2种用法
Jun 21 Python
python3使用urllib模块制作网络爬虫
Apr 08 Python
浅谈Python中的zip()与*zip()函数详解
Feb 24 Python
python 读取.csv文件数据到数组(矩阵)的实例讲解
Jun 14 Python
widows下安装pycurl并利用pycurl请求https地址的方法
Oct 15 Python
python导入模块交叉引用的方法
Jan 19 Python
对Django中static(静态)文件详解以及{% static %}标签的使用方法
Jul 28 Python
浅谈Python 敏感词过滤的实现
Aug 15 Python
利用python3 的pygame模块实现塔防游戏
Dec 30 Python
flask框架url与重定向操作实例详解
Jan 25 Python
pytorch 如何使用batch训练lstm网络
May 28 Python
python标准库ElementTree处理xml
May 20 Python
浅谈Python基础之I/O模型
May 11 #Python
老生常谈Python进阶之装饰器
May 11 #Python
python 第三方库的安装及pip的使用详解
May 11 #Python
插入排序_Python与PHP的实现版(推荐)
May 11 #Python
Python实现计算两个时间之间相差天数的方法
May 10 #Python
Python开发的实用计算器完整实例
May 10 #Python
Python只用40行代码编写的计算器实例
May 10 #Python
You might like
PHP中SESSION使用中的一点经验总结
2012/03/30 PHP
PHP爆绝对路径方法收集整理
2012/09/17 PHP
PHP6 中可能会出现的新特性预览
2014/04/04 PHP
ThinkPHP在Cli模式下使用模板引擎的方法
2015/09/25 PHP
php生成动态验证码gif图片
2015/10/19 PHP
PHP实现移除数组中为空或为某值元素的方法
2017/01/07 PHP
js中将具有数字属性名的对象转换为数组
2011/03/06 Javascript
JS 无限级 Select效果实现代码(json格式)
2011/08/30 Javascript
js取两个数组的交集|差集|并集|补集|去重示例代码
2013/08/07 Javascript
jquery 取子节点及当前节点属性值的方法
2014/08/24 Javascript
jQuery插件ajaxFileUpload实现异步上传文件效果
2015/04/14 Javascript
php+ajax+jquery实现点击加载更多内容
2015/05/03 Javascript
jquery选择器中的空格与大于号>、加号+与波浪号~的区别介绍
2016/06/24 Javascript
javascript html5轻松实现拖动功能
2017/03/01 Javascript
浅谈NodeJs之数据库异常处理
2017/10/25 NodeJs
JavaScript实现QQ列表展开收缩扩展功能
2017/10/30 Javascript
微信小程序开发实现消息推送
2020/11/18 Javascript
详解Vue中Axios封装API接口的思路及方法
2020/10/10 Javascript
vant组件中 dialog的确认按钮的回调事件操作
2020/11/04 Javascript
[46:44]DOTA2-DPC中国联赛 正赛 Ehome vs PSG.LGD BO3 第二场 3月7日
2021/03/11 DOTA
Python使用chardet判断字符编码
2015/05/09 Python
python正则分析nginx的访问日志
2017/01/17 Python
基于python3 OpenCV3实现静态图片人脸识别
2018/05/25 Python
python 产生token及token验证的方法
2018/12/26 Python
python使用BeautifulSoup与正则表达式爬取时光网不同地区top100电影并对比
2019/04/15 Python
由面试题加深对Django的认识理解
2019/07/19 Python
Python绘制三角函数图(sin\cos\tan)并标注特定范围的例子
2019/12/04 Python
python中封包建立过程实例
2021/02/18 Python
CSS3自定义滚动条样式 ::webkit-scrollbar的示例代码详解
2020/06/01 HTML / CSS
图片上传插件ImgUploadJS:用HTML5 File API 实现截图粘贴上传、拖拽上传
2016/01/20 HTML / CSS
美国受欢迎的眼影品牌:BH Cosmetics
2016/10/25 全球购物
美国零售商店:Blue&Cream
2017/04/07 全球购物
机电一体化专业应届生求职信
2013/11/27 职场文书
领导班子对照检查材料
2014/09/22 职场文书
博士生专家推荐信
2015/03/25 职场文书
留学推荐信英文范文
2015/03/26 职场文书