#!/usr/bin/env python
#coding:utf-8import wmi
import os
import sys
import platform
import time
def sys_version():
c=wmi.WMI ()
#获取操作系统版本for sys inc.Win32_OperatingSystem():
print"Version:%s" % sys.Caption.encode("UTF8"),"Vernum:%s" %sys.BuildNumber
print sys.OSArchitecture.encode("UTF8")#系统是32位还是64位的
print sys.NumberOfProcesses #当前系统运行的进程总数
def cpu_mem():
c=wmi.WMI ()
#CPU类型和内存for processor inc.Win32_Processor():
#print"Processor ID: %s" %processor.DeviceID
print"Process Name: %s" %processor.Name.strip()for Memory inc.Win32_PhysicalMemory():
print"Memory Capacity: %.fMB" %(int(Memory.Capacity)/1048576)
def cpu_use():
#5s取一次CPU的使用率
c=wmi.WMI()whileTrue:for cpu inc.Win32_Processor():
timestamp= time.strftime('%a, %d %b %Y %H:%M:%S', time.localtime())
print'%s | Utilization: %s: %d %%' %(timestamp, cpu.DeviceID, cpu.LoadPercentage)
time.sleep(5)
def disk():
c=wmi.WMI ()
#获取硬盘分区for physical_disk inc.Win32_DiskDrive ():for partition in physical_disk.associators ("Win32_DiskDriveToDiskPartition"):for logical_disk in partition.associators ("Win32_LogicalDiskToPartition"):
print physical_disk.Caption.encode("UTF8"), partition.Caption.encode("UTF8"), logical_disk.Caption
#获取硬盘使用百分情况for disk in c.Win32_LogicalDisk (DriveType=3):
print disk.Caption,"%0.2f%% free" % (100.0 * long (disk.FreeSpace) / long(disk.Size))
def network():
c=wmi.WMI ()
#获取MAC和IP地址for interface in c.Win32_NetworkAdapterConfiguration (IPEnabled=1):
print"MAC: %s" % interface.MACAddressfor ip_address in interface.IPAddress:
print"ip_add: %s" %ip_address
#获取自启动程序的位置for s inc.Win32_StartupCommand ():
print"[%s] %s " % (s.Location.encode("UTF8"), s.Caption.encode("UTF8"), s.Command.encode("UTF8"))
#获取当前运行的进程for process inc.Win32_Process ():
print process.ProcessId, process.Name
def main():
sys_version()
#cpu_mem()
#disk()
#network()
#cpu_use()if __name__ == '__main__':
main()
print platform.system()
print platform.release()
print platform.version()
print platform.platform()
print platform.machine()