Python查詢磁盤信息,磁盤剩余可用空間


參考:https://www.iteye.com/blog/halfish-1706810

環境:

Python: 3.6

系統:server 2016

設計模塊包:wmi   #pip install wmi

import wmi

def get_disk_info():
    """
    獲取物理磁盤信息。
    """
    tmplist = []
    c = wmi.WMI()
    for physical_disk in c.Win32_DiskDrive():
        tmpdict = {}
        tmpdict["Caption"] = physical_disk.Caption
        tmpdict["Size"] = int(physical_disk.Size) / 1024 / 1024 / 1024
        tmplist.append(tmpdict)
    return tmplist


def get_fs_info():
    """
    獲取文件系統信息
    包含分區的大小、已用量、可用量、使用率、掛載點信息
    """
    tmplist = []
    c = wmi.WMI()
    for physical_disk in c.Win32_DiskDrive():
        for partition in physical_disk.associators("Win32_DiskDriveToDiskPartition"):
            for logical_disk in partition.associators("Win32_LogicalDiskToPartition"):
                tmpdict = {}
                tmpdict["Caption"] = logical_disk.Caption
                tmpdict["DiskTotal"] = int(logical_disk.Size) / 1024 / 1024 / 1024
                tmpdict["UseSpace"] = (int(logical_disk.Size) - int(logical_disk.FreeSpace)) / 1024 / 1024 / 1024
                tmpdict["FreeSpace"] = int(logical_disk.FreeSpace) / 1024 / 1024 / 1024
                tmpdict["Percent"] = int(
                    100.0 * (int(logical_disk.Size) - int(logical_disk.FreeSpace)) / int(logical_disk.Size))
                tmplist.append(tmpdict)
    return tmplist


if __name__ == "__main__":
    disk = get_disk_info()
    print(disk)
    #獲取磁盤信息
    fs = get_fs_info()
    for f in fs:
        disk_name = f['Caption'] #磁盤名
        DiskTotal = f['DiskTotal'] #磁盤大小 單位G
        disk_UseSpace = f['UseSpace'] #已用磁盤大小 單位G
        disk_FreeSpace = f['FreeSpace'] #剩余可用磁盤大小 單位G
        print('磁盤名:{}  磁盤大小:{}G   已用空間:{}G  剩余可用空間:{}G !!'.format(disk_name,round(DiskTotal,2),round(disk_UseSpace,2),round(disk_FreeSpace,2)))
  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM