前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >python脚本查看linux硬件信息

python脚本查看linux硬件信息

作者头像
py3study
发布2020-01-09 15:09:47
3.1K0
发布2020-01-09 15:09:47
举报
文章被收录于专栏:python3python3python3

#!/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()

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-08-26 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档