python 获取挂载文件系统的方法

python way to get mounted filesystems

这就是我在 python 中设法枚举已挂载文件系统的方式:

for line in open("/etc/mtab"):
    mount_point = line.split()[1]
    if mount_point.startswith('/foo/bar'):
        ...

是否有更好、更干净或更简单的方法?我没有在标准模块(os、stat、statvfs 等)中找到任何内容。

您可能希望将结果收集到列表推导式而不是 for 循环中。

您提供的代码示例:

collection = [line.split()[1] for line in open("/etc/mtab")
              if line.split()[1].startswith('/foo/bar')]

这会更快地创建一个包含所有以“/foo/bar”开头的 mount_point 的列表

如果您只想迭代它们,请改用生成器表达式:

collection = (line.split()[1] for line in open("/etc/mtab")
              if line.split()[1].startswith('/foo/bar'))