Windows命令行中类似于Mac `xattr`的功能是什么?

6
我认为扩展文件属性存在于Windows支持的NTFS中。但是我找不到访问/更新属性的命令。
有没有Windows(及其文件系统)的变体支持这一点?
我尝试了getfattr、setfattr和其他一些命令,attrib也不行。
如果要跨文件系统保留扩展属性(即使是在FUSE中实现的虚拟文件系统),则所有目标平台都需要在用户空间提供一个api(一个cmd或一组cmd)。

嗨,显然我对扩展属性不如下面的答案熟悉,所以我会把这个作为评论来试探一下。使用PowerShell可以深入到COM并获取属性:https://blogs.technet.microsoft.com/heyscriptingguy/2014/02/06/use-powershell-to-find-metadata-from-photograph-files/ - Alex KeySmith
另外,你有没有考虑在Windows的新Linux子系统中使用Bash来通过xattr进行操作(当然这取决于你的使用情况)? - Alex KeySmith
我认为NTFS备用数据流https://dev59.com/1XI-5IYBdhLWcg3wiYza#1819063是最接近扩展属性的东西。 - Oren Kishon
3个回答

1

1

最接近UNIX的attrib是EAs: NTFS存储分区元数据,称为扩展属性(EA),允许将数据存储为文件或文件夹的属性。

例如,EAs 被IE用于标识文件已从网上下载。

来自维基百科:

在Windows NT上,FAT、HPFS和NTFS支持有限长度的扩展属性。这是作为OS/2子系统的一部分实现的。它们被Interix POSIX子系统的NFS服务器显着使用,以实现类Unix权限。Windows 10周年更新中添加的Linux子系统也用于类似的目的,将Linux文件模式、所有者、设备ID(如果适用)和文件时间存储在扩展属性中。此外,NTFS可以以交替数据流(ADS)的形式存储无限长度的扩展属性,这是一种资源叉。文件管理器Total Commander的插件,如NTFS Descriptions和QuickSearch eXtended,支持通过或搜索包含在ADS Streams中的元数据来过滤文件列表。参考资料
如果您想进行与安全相关的操作,则需要查看自主访问控制列表(DACL)功能; 了解Windows NTFS权限

Powershell可以帮助设置文件和文件夹的模式和扩展属性,但遗憾的是,这仅适用于常规属性(而不是EAs)。

我在3G-Fuse源代码中找到了与NTFS属性相关的内容,这可能会有所帮助。但是,我怀疑这是否真正可移植


代码示例似乎只适用于设置标准属性,而不是扩展属性。我正在寻找一种方法来实现后者。 - user2771609
我已经删除了代码示例并澄清了那一部分。 - wp78de

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接