【发布时间】:2013-07-23 02:36:45
【问题描述】:
Mac OS X Finder 使用“包”的概念使某些文件夹的内容对用户不透明。我正在使用os.walk() 枚举目录树,我想跳过对应用程序包等包的枚举。
mdls 命令行实用程序可用于检查com.apple.package 是否在kMDItemContentTypeTree 属性中。在检测到操作系统确实是 darwin 后,检测文件夹是否是放入 os.system 并使用 mdls 的包的唯一/最佳方法是什么?
顺便说一句,这个解决方案似乎依赖于 Spotlight 元数据,据我了解,它是由文件/目录本身从填充的。这让我想知道是否有一种方法可以检查目录是否是mdls 之外的包。也许我错过了什么。
【问题讨论】:
-
如果您决定使用
mdls,请使用subprocess module 而不是os.system调用它。 -
谢谢你,@nofinator
标签: python macos metadata spotlight