问题标签 [xattr]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
10358 浏览

macos - 了解 xattr -p com.apple.quarantine 的输出

前几天,我正在处理一些具有扩展属性com.apple.quarantine的文件。我知道它的用途,但我一直很好奇当你输出它的值时下面的属性意味着什么。

例如,当我输入

xattr -p com.apple.quarantine xmlrpc.php

对于具有上述 xattr 的文件,我得到如下输出:

0083;59b926ad;Safari.app;55847AA4-5562-42A2-89A7-8FAD394B455C

前4位代表什么?即0083谷歌没有提出任何好的东西,我从用户那里找到了一些指南,也试图弄清楚这些数字究竟代表什么。

0 投票
0 回答
134 浏览

xcode - 将应用程序上传到 App Store 期间 Xcode 9.0.1 崩溃

Xcode 9.0.1 (9A1004) 在上传期间更新 Xcode 后崩溃,

在 Terminal.app 中,当我运行时xattr

我怎么解决这个问题

我试过了

0 投票
2 回答
1172 浏览

json - OS X 中 xattr 的最大大小

我想使用 xattr 将一些元数据直接存储在我的文件上。这些本质上是我在搜索文件时用于文件分类的标签。我的目标是通过将更多信息与每个标签相关联来扩展通常的 Mac OS X 标签,例如添加该标签的日期,也许还有其他东西。

我正在考虑使用 .xattr 将 xattr 添加到文件中xattr -w。我的第一个猜测是在这个 xattr 值中存储类似 JSON 的东西,但我想知道

1) 我可以在 xattr 中存储的大小限制是多少?(xattr 的人是 vauge,指的是_PC_XATTR_SIZE_BITS我无法在任何地方找到的东西)

2) 将 JSON 格式的字符串存储为 xattr 有什么问题吗?

0 投票
2 回答
349 浏览

python - xCode剥离扩展属性失败/ xattr

当我尝试将应用上传到应用商店时,出现以下错误:

剥离扩展属性失败。“/usr/bin/xattr -crs /var/folders/t2/fjp18t212bdc6kgb3pjzk81m0000gn/T/XcodeDistPipeline.ZBT/Root/Payload/testvgd.app”以非零状态退出。/usr/bin/xattr 工具可能已损坏。

当我尝试从命令行运行此工具 /usr/bin/xattr 时,我得到:“pkg_resources.DistributionNotFound: The 'xattr==0.6.4' distribution was not found and is required by the application"

我可以在哪里以及如何添加这个 xattr 发行版?我从:https ://pypi.python.org/pypi/xattr/0.6.4 下载了它,但是当我尝试安装它时,我得到:错误:包目录'xattr'不存在。

是否有解决方法或解决方法?谢谢!

0 投票
2 回答
305 浏览

ls - ls -l@ 输出中扩展属性附近的数字是什么意思?

ls -l@ 输出中扩展属性附近的数字是什么意思以及我如何获得它?

0 投票
0 回答
473 浏览

macos - MacOS:使用 Finder 同步扩展中的 getxattr/setxattr

我想在 OSX 10.12.6 上使用 Finder 同步扩展中的 setxattr/getxattr,但调用失败并显示 errno==1,即 EPERM。Finder 同步扩展在沙箱中运行,所以我想我需要请求权限。到目前为止,没有多少谷歌搜索和文档浏览发现信息。我要访问的文件归我自己所有,使用 xattr 命令行实用程序设置属性成功并产生预期结果。

所以问题是:我需要给沙箱哪些权限/权利,或者这可能吗?

我基本上想将同步状态存储在扩展属性(清理、修改、同步)中,并基于此为 requestBadgeIdentifierForURL 选择正确的徽章。较低优先级的非沙盒进程遍历文件并更新属性。

另一种方法是使用单独的数据库来存储同步状态,如果 xattr 不起作用,我将使用它。

编辑:添加了权利文件

示例随附的原始权利文件只是

这也不起作用。

我在 GitHub 上添加了一个测试项目https://github.com/JensRestemeier/SyncExtensionTest

0 投票
1 回答
1773 浏览

python - Python Module xattr 没有属性列表

我编写了一个脚本,它使用模块在某些文件上设置扩展属性xattr。我在 python3 中的 Ubuntu 中成功测试了它,但它不适用于我的 RasperryPi。

我不得不更改几十个小错误,主要是xattr not knowing its methods.

例如xattr.set(...) has to be changed to xattr.setattr(...). 但我未能列出它们。所以我尝试了基础知识并得到了错误:

我的想法可能是 python 使用了错误的模块(对于 python 2.7 而不是 3?)。所以我试图卸载 2.7 模块但得到了这个:

但我可以成功卸载 python3 包。之后“导入 xattr”即使在 python3 中仍然有效?

0 投票
1 回答
211 浏览

macos - 我可以在磁盘映像打开时修改它,但不能“保存更改”吗?

我有一个脚本,可以在其中创建 SD 卡的磁盘映像hdiutil,然后安装该磁盘映像。然后,我将扩展属性写入内部文件,xattr并将它们重要到程序中。有什么办法可以逆转这些xattr写入,以便在我卸载图像时它们不会保存?理想情况下,我会保留 SD 卡的原始副本以进行存档。有没有办法挂载磁盘映像,更改里面的文件,然后卸载它并且这些更改没有“保存”?由于时间原因,我试图避免两次复制 SD 卡。

0 投票
1 回答
613 浏览

swift - 如何在不标记文件的情况下使用 Swift 以编程方式在 macOS 中添加 Finder 标签?

我正在构建一个 macOS 应用程序,它使用类似于Swift 3: Set Finder label color的扩展属性以编程方式为文件设置 Finder 标签。这很好用。

但是,我想创建一个标签并使其在文件系统中可用,而无需将标签添加到特定文件中。例如,当用户点击一个按钮时,我想创建一个标签,类似于Finder - Preferences - Tags,您可以通过按 + 按钮来创建一个新标签。您不必指定文件或文件夹。

我尝试使用setResourceValue API向虚拟文件夹的_kMDItemUserTags添加新标签。这将按预期创建标签。但是,虚拟文件​​夹现在显示在搜索此标签中,这并不好。一旦我再次从虚拟文件夹中删除标签(并且没有其他文件或文件夹具有此标签),该标签就会从可用标签列表中消失。

所以,我想知道如何在 Swift 中创建一个新标签并将其持久化而不将其分配给文件?

0 投票
1 回答
1274 浏览

swift - Swift - 如何修改文件元数据,如 kMDItemDisplayName?

我试图找到一种方法来更改文件的元数据属性(那些前缀为“kMDItem”的,由 列出mdls),但我没有找到任何解决方案。时间

起初,我尝试过使用FileManager.default.setAttributes(_attributes:ofItemAtPath:),但这种方法只给了我几个选项,它只给了我修改文件的能力modification datecreation date等等posix permissions​​,这还不够。

然后,我尝试使用NSMetadataItemwithsetValue(_value:forKey:)函数来更改元数据值,这是我的代码:

我注意到setValue(_value:forKey:)通过反复得到这个返回错误在这里没有做任何事情:error: Execution was interrupted, reason: EXC_BAD_INSTRUCTION (code=EXC_I386_INVOP, subcode=0x0)

最后,我在 StackOverflow 上红了这篇文章,这导致了我的这段代码:

执行后,我用mdlsandxattr -l查看结果,发现这只是给文件添加扩展属性的解决方案,元数据没有改变,只是成功添加了名称为“kMDItemDisplayName”的扩展属性。

结果不是我想要的(我只是使用 kMDItemDisplayName 作为我的问题的示例),我不只是想找到一种将扩展属性添加到文件的方法,而是一种编辑列出的属性的方法mdls。也许没有解决方案?或者也许我应该以完全不同的方式来做?