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显示进度条的方法
Sep 20 Python
Python监控主机是否存活并以邮件报警
Sep 22 Python
说一说Python logging
Apr 15 Python
Python使用cx_Oracle模块操作Oracle数据库详解
May 07 Python
Python图像处理之识别图像中的文字(实例讲解)
May 10 Python
基于python实现百度翻译功能
May 09 Python
anaconda中更改python版本的方法步骤
Jul 14 Python
python之生产者消费者模型实现详解
Jul 27 Python
pycharm修改file type方式
Nov 19 Python
Python文件操作模拟用户登陆代码实例
Jun 09 Python
python环境搭建和pycharm的安装配置及汉化详细教程(零基础小白版)
Aug 19 Python
python在package下继续嵌套一个package
Apr 14 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懒人函数 自动添加数据
2011/06/28 PHP
ThinkPHP的Widget扩展实例
2014/06/19 PHP
Yii实现文章列表置顶功能示例
2016/10/18 PHP
thinkphp3.2实现在线留言提交验证码功能
2017/07/19 PHP
ThinkPHP 5.x远程命令执行漏洞复现
2019/09/23 PHP
php使用gearman进行任务分发操作实例详解
2020/02/26 PHP
js css 实现遮罩层覆盖其他页面元素附图
2014/09/22 Javascript
JavaScript中的类与实例实现方法
2015/01/23 Javascript
jQuery实现冻结表格行和列
2015/04/29 Javascript
javaScript中Math()函数注意事项
2015/06/18 Javascript
高性能JavaScript DOM编程(1)
2015/08/11 Javascript
javascript中undefined与null的区别
2015/08/16 Javascript
javascript实现Email邮件显示与删除功能
2015/11/21 Javascript
jQuery插件实现图片轮播特效
2016/06/16 Javascript
JavaScript+Html5实现按钮复制文字到剪切板功能(手机网页兼容)
2017/03/30 Javascript
微信小程序 五星评分的实现实例
2017/08/04 Javascript
详解JavaScript原生封装ajax请求和Jquery中的ajax请求
2019/02/14 jQuery
这应该是最详细的响应式系统讲解了
2019/07/22 Javascript
在实例中重学JavaScript事件循环
2020/12/03 Javascript
windows下python连接oracle数据库
2017/06/07 Python
Python探索之pLSA实现代码
2017/10/25 Python
Python算法之图的遍历
2017/11/16 Python
用python标准库difflib比较两份文件的异同详解
2018/11/16 Python
PyGame贪吃蛇的实现代码示例
2018/11/21 Python
Python操作excel的方法总结(xlrd、xlwt、openpyxl)
2019/09/02 Python
多个python文件调用logging模块报错误
2020/02/12 Python
解决Django中checkbox复选框的传值问题
2020/03/31 Python
python GUI计算器的实现
2020/10/09 Python
Python爬虫之Selenium实现键盘事件
2020/12/04 Python
德国高性价比网上药店:medpex
2017/07/09 全球购物
eharmony澳大利亚:网上约会服务
2020/02/29 全球购物
学校安全检查制度
2014/01/27 职场文书
运动会入场词200字
2014/02/15 职场文书
2015年社区民政工作总结
2015/04/21 职场文书
php随机生成验证码,php随机生成数字,php随机生成数字加字母!
2021/04/01 PHP
Python中super().__init__()测试以及理解
2021/12/06 Python