如何在 mac os x 中赋予文件扩展属性?

如何在 mac os x 中赋予文件扩展属性?

如何在 mac os x 中赋予文件扩展属性? Mac os x 没有“setattr”命令。

答案1

我的埃尔卡皮坦没有setattrsetxattr(后者C 运行时函数的名称:您可以使用它来创建自己的实用程序)。

OSX 提供xattr,其中(注意诸如Mac OS X 扩展属性和 Xattr)似乎是最近的事。评论中手动设置任意文件的扩展属性from 2011 给出了有关 OSX 10.5 的提示

你可以看到一些讨论如何在 Mac OS X 中删除文件的“扩展属性”?,以及副本(无日期)SS64。在寻找资源的过程中,我发现了一个Sourceforge项目这可能是相关的。最好的来源当然是手册页你的机器。

手册页列出了几种格式,指出这种格式是文件的属性:

 xattr -w [-rsx] attr_name attr_value file ...

其中-r-s-x选项分别处理目录递归、符号链接和输入使用十六进制的属性值。

答案2

像他们说的那样,“有一个应用程序可以做到这一点。”您可以下载xattred– “全功能的扩展属性编辑器”以及其他相关工具。xattred隐藏在简约的 GUI 中(而且 AFAIK 是闭源的),但它是了解 MacOS 中扩展属性可以做什么的更快方法。 GitHub 上还有适用于 MacOS 的开源 xattr 编辑器;例如xattr 编辑器

MacOS 中捆绑的命令行实用程序xattr最适合脚本编写和重复性任务。

答案3

xattr它在 OS X 上被调用。您可以使用setxattr它来设置属性。

答案4

在 MacOS Monterey 中,setxattr 给出zsh: command not found: setxattr

相反,它是xattr -w <attribute name> <attribute value> file/folder

完整的联机帮助页在这里:

$: xattr
Not enough arguments for option -�. Expected at least 1 but got 0

usage: xattr [-l] [-r] [-s] [-v] [-x] file [file ...]
       xattr -p [-l] [-r] [-s] [-v] [-x] attr_name file [file ...]
       xattr -w [-r] [-s] [-x] attr_name attr_value file [file ...]
       xattr -d [-r] [-s] attr_name file [file ...]
       xattr -c [-r] [-s] file [file ...]

The first form lists the names of all xattrs on the given file(s).
The second form (-p) prints the value of the xattr attr_name.
The third form (-w) sets the value of the xattr attr_name to the string attr_value.
The fourth form (-d) deletes the xattr attr_name.
The fifth form (-c) deletes (clears) all xattrs.

options:
  -h: print this help
  -l: print long format (attr_name: attr_value and hex output has offsets and
      ascii representation)
  -r: act recursively
  -s: act on the symbolic link itself rather than what the link points to
  -v: also print filename (automatic with -r and with multiple files)
  -x: attr_value is represented as a hex string for input and output```

相关内容