OSX 10.5 上的哪个版本的 xattr 不会遵循符号链接?

OSX 10.5 上的哪个版本的 xattr 不会遵循符号链接?

我需要编辑符号链接目录的扩展属性。

不幸的是,OSX 10.5 上的 xattr 写入的是链接目标而不是链接本身。

我发现了一个支持“-s”选项以禁止以下符号链接的不同版本。我从存储库中检查了它,但没有我能找到的安装程序文件,我想我需要一个: https://xattr.svn.sourceforge.net/svnroot/xattr

然后我找到了另一个版本并检查了一下,最后在安装Xcode后就可以安装它了:

http://svn.red-bean.com/bob/xattr/releases/xattr-0.6.1/

但是当我运行这个版本时,我似乎没有得到神奇的“-s”选项来抑制以下符号链接。事实上,这个版本似乎没有原始 xattr 所具有的任何其他选项。

是否有人在 OSX 10.5 上运行 xattr 版本,该版本支持不遵循符号链接,或者任何其他允许我编写扩展属性而不遵循符号链接的应用程序?

答案1

变化于https://github.com/jwodder/xattr1具有-P抑制跟踪符号链接的通常行为的选项(即,将 XATTR_NOFOLLOW 选项传递给listxattr(2)等)。附带的文档表明,这种“操作符号链接,而不是目标”模式是默认模式(以前​​默认操作目标,但代码最近更新以匹配文档)。

选项和操作模式与通常的不同xattr(1),因此您可能需要调整已有的任何脚本。

由于您说您已经安装了开发人员工具(即 Xcode),因此只需简单操作make即可构建该程序。我在运行 Mac OS X 10.6.7 的机器上对其进行了编译和简单测试(我之前也在 10.4 机器上使用过它,因此它在 10.5 上应该可以正常工作)。


关于“符号链接目录”的注意事项:目录条目可以是目录或符号链接(或纯文件等),但不能同时是两者。说“符号链接目录”或“符号链接目录”是不准确的。正确的做法是“最终指向目录的符号链接

1 您可以使用 GitHub 页面右侧的下载按钮下载,.tar.gz或者.zip如果您没有安装 Git。

2 “最终”是因为符号链接可以指向其他符号链接。它们甚至可以指向不存在的路径名(创建“悬空”符号链接)。

相关内容