如何使用python获取某个路径的设备文件和分区号?
在Unix和类Unix操作系统中,存储驱动程序安装在特定路径中。如何使用python获取某个路径的设备文件和分区号?,python,linux,python-3.x,filesystems,Python,Linux,Python 3.x,Filesystems,在Unix和类Unix操作系统中,存储驱动程序安装在特定路径中。 Python 3.x中是否有更好的函数,可以获取设备名称和目录的分区号,例如/->/dev/sda1和/home->/dev/sda2?我不确定下面代码的来源,但它确实解决了我以前遇到的类似问题。 下面的代码使用psutil获取有关所有装入点和设备的信息。 安装运行 pip安装psutil 您可以根据需要调整代码 当os.path.ismountpath返回路径时,您将获得装载点。那么os.statvfspath可能会有所帮助。但
Python 3.x中是否有更好的函数,可以获取设备名称和目录的分区号,例如/->/dev/sda1和/home->/dev/sda2?我不确定下面代码的来源,但它确实解决了我以前遇到的类似问题。 下面的代码使用psutil获取有关所有装入点和设备的信息。 安装运行 pip安装psutil
您可以根据需要调整代码 当os.path.ismountpath返回路径时,您将获得装载点。那么os.statvfspath可能会有所帮助。但我不能再进一步了。可能仍然需要扫描/etc/mtab。好的,谢谢您提供设备的信息。我能很容易地解决这个问题。
def disksinfo():
values = []
disk_partitions = psutil.disk_partitions(all=False)
for partition in disk_partitions:
usage = psutil.disk_usage(partition.mountpoint)
device = {'device': partition.device,
'mountpoint': partition.mountpoint,
'fstype': partition.fstype,
'opts': partition.opts,
'total': usage.total,
'used': usage.used,
'free': usage.free,
'percent': usage.percent
}
values.append(device)
values = sorted(values, key=lambda device: device['device'])
return values