【问题标题】:python-get physical disk info from logical pathpython-从逻辑路径获取物理磁盘信息
【发布时间】:2013-06-01 04:47:09
【问题描述】:

我有逻辑路径。例如:- path1='C:/abc', path2='E:/xyz'

我想检查它们是否都驻留在同一个物理磁盘上。

或者一般来说,我想将逻辑路径映射到关联的物理驱动器。

我也想为 linux 做同样的事情。 现在我使用“os.stat(path).st_dev”来获取设备ID。但是同一物理驱动器上的逻辑磁盘的 id 似乎不同。所以它实际上对我不起作用。是否有更好或直接的解决方案。

【问题讨论】:

  • 很抱歉没有提及我的努力。我尝试使用 wmi,它解决了我的问题。但在 linux 中再次陷入同样的​​困境。

标签: python linux windows wmi


【解决方案1】:

这解决了我的问题

   key = ''
    for physical_disk in w.Win32_DiskDrive():
    logical_disks = []
    for partition in physical_disk.associators ("Win32_DiskDriveToDiskPartition"):
        for logical_disk in partition.associators ("Win32_LogicalDiskToPartition"):
            key = logical_disk.Description
            if key not in all_logical_disks:
                all_logical_disks[key] = []
            logical_disks.append(logical_disk.Caption)
    if logical_disks:
        all_logical_disks[key].append(logical_disks)

这帮助我获得了一个类型的字典:{u'Local Fixed Disk': [[u'C:', u'D:'],[u'E:', u'F:']] } 它将逻辑分区分组在不同的物理磁盘中。现在我可以比较逻辑路径是否在同一个列表中。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-03-11
    • 1970-01-01
    • 2011-07-22
    • 2019-02-08
    • 1970-01-01
    • 2021-05-15
    • 2011-12-01
    • 1970-01-01
    相关资源
    最近更新 更多