欢迎各位兄弟 发布技术文章
这里的技术是共享的
xattr
是 macOS 操作系统中用来管理文件扩展属性的命令行工具。扩展属性(Extended Attributes)允许您附加额外的数据到文件或目录上,这些数据独立于标准的文件系统属性(如所有权、权限、大小和修改时间),并且可以包含任何类型的信息,如 Finder 标签颜色、文件的 quarantine 状态或其他应用程序定义的数据。
以下是一些基本的 xattr
命令及其用法详解:
Sh1xattr [options] file
例如:
Sh1xattr test.txt
这将显示指定文件 test.txt
所有的扩展属性名。
Sh1xattr -l [attribute_name] file
例如:
Sh1xattr -l com.apple.metadata:kMDItemFinderComment test.txt
这条命令会列出 test.txt
文件上名为 com.apple.metadata:kMDItemFinderComment
的属性的详细信息。
Sh1xattr -w [attribute_name] [attribute_value] file
例如:
Sh1xattr -w com.example.key "Some Value" test.txt
此命令将给 test.txt
文件添加或覆盖名为 com.example.key
的属性,并赋予其值 "Some Value"
。
Sh1xattr -d [attribute_name] file
例如:
Sh1xattr -d com.apple.quarantine test.app
这个命令会从 test.app
文件中删除 com.apple.quarantine
属性,常用于解除刚下载的应用程序的隔离状态。
Sh1xattr -r [directory]
例如:
Sh1xattr -r /path/to/directory
此命令会递归地查找指定目录下的所有文件,并列出它们的扩展属性。
注意:
-r
参数表示递归操作,适用于目录及其子目录。
com.apple.quarantine
是一个常见的扩展属性,表示文件是从互联网或其他不可信位置获取的,因此可能需要用户确认才能打开。
使用 -v
参数可以获得更详细的输出,包括属性的大小和值(如果可以打印的话)。
更多高级用法可以通过查阅命令的手册页获得,通过终端输入 man xattr
查看。