Cocoa 获取所有文件系统标记

Cocoa 获取所有文件系统标记,cocoa,tags,osx-mavericks,hfs+,Cocoa,Tags,Osx Mavericks,Hfs+,因为OSX小牛支持文件标签。是否有任何API以编程方式访问这些文件?如何获取所有系统标签的列表?并操纵它们 我已经试过了: NSFileManager类 文件系统编程指南 文件元数据搜索编程指南 然而,这些都没有提到标签的存在。不知道这是否是您正在寻找的: 有关以编程方式添加标记的信息,请参见此线程 另外,如果查看NSURL reources页面,它会说明如何获取附加到资源的标记的名称,这些标记使用NSURLTagNamesKey作为NSString值数组返回 您可以读取finder用户默认

因为OSX小牛支持文件标签。是否有任何API以编程方式访问这些文件?如何获取所有系统标签的列表?并操纵它们

我已经试过了:

  • NSFileManager类
  • 文件系统编程指南
  • 文件元数据搜索编程指南

然而,这些都没有提到标签的存在。

不知道这是否是您正在寻找的:

有关以编程方式添加标记的信息,请参见此线程


另外,如果查看NSURL reources页面,它会说明如何获取附加到资源的标记的名称,这些标记使用NSURLTagNamesKey作为NSString值数组返回

您可以读取finder用户默认值

defaults read com.apple.Finder FavoriteTagNames  

(
    "",
    Red,
    Orange,
    Yellow,
    Green,
    Blue,
    Purple,
    Gray
)

您可以在此路径中找到所有系统标记:
~/Library/SyncedPreferences/com.apple.finder.plist


但是plist文件的默认值不存在。可以通过添加新标记使其显示。顺便问一下,您是否找到其他方法获取所有系统标签

谢谢!虽然您的答案是可以处理单个资源,但我正在尝试找到无需单独文件即可访问标记的方法。我想要所有的文件系统标签,并且能够执行像系统范围的重命名这样的操作。我有一个脚本,它搜索整个文件系统,提取每个文件的标记,并减少删除重复项。这是太多的工作,我认为有一些更有效的方法,就像命令读取一样,这些只是“最喜欢的标签”,以获得更完整的答案: