-
-
- import win32com.client
- import time
-
- def disk_status():
- try:
- while 1:
- strComputer = "."
- objWMIService = win32com.client.Dispatch("WbemScripting.SWbemLocator")
- objSWbemServices = objWMIService.ConnectServer(strComputer,"root\cimv2")
- colItems = objSWbemServices.ExecQuery("SELECT * FROM Win32_PerfFormattedData_PerfDisk_LogicalDisk")
- print "time:" + time.strftime("%Y-%m-%d %H:%M:%S")
- print "Device:" +'\t' + "tps" +'\t' + "kB_read/s" +'\t' + "kB_wrtn/s" +'\t' + "kB_read" +'\t' + "kB_wrtn" +'\t' +"Disk_free"
- for objItem in colItems:
- if objItem.Name != '_Total':
- print objItem.Name +'\t' + str(objItem.DiskTransfersPersec) +'\t' + "%0.1f" % (float(objItem.DiskReadBytesPersec)/1024) +'\t' + '\t' + "%0.1f" % (float(objItem.DiskWriteBytesPersec)/1024) +'\t' + '\t' + "%0.1f" % (float(objItem.DiskReadsPersec)/1024) +'\t' + "%0.1f" % (float(objItem.DiskWritesPersec)/1024) +'\t' + "%0.0f%%" % objItem.PercentFreeSpace
-
-
-
-
-
-
-
-
-
-
-
- print ''
- time.sleep(2)
- except (EOFError,KeyboardInterrupt):
- pass
- if __name__ == '__main__':
- disk_status()