macOS 探寻文件扩展属性

过程

今天用 ll 命令偶然观察到一个细节,某些文件(夹)属性后面带有 @ 字符:

$ ll
total 104
-rw-r--r--@  1 user  staff     0B  7 25 18:56 Icon?
...
drwx------@ 15 user  staff   480B  8 29 13:43 renren

经过谷歌一番,原来这代表文件含有 扩展属性

使用 ll -@ 可以查看详细的属性信息。

total 104
-rw-r--r--@  1 jootu  staff     0B  7 25 18:56 Icon?
        com.apple.FinderInfo      32B
        com.apple.ResourceFork    50K
...
drwx------@ 15 user  staff   480B  8 29 13:43 renren
        com.apple.quarantine      57B

对于强迫症来说,如何去除扩展属性显得尤为重要,尤其是不能容忍在一批同作用的文件里有那么几个「特殊的家伙」?。

当然,在去除扩展属性之前,先要确定这个属性的用途。如上,Icon? 是系统文件,我没有修改;而 renren 是从网上下载解压的一个文件夹,应该没什么猫腻才对。

再次谷歌,得知 com.apple.quarantine 是系统自动添加的;像在 macOS 打开下载的文件时,经常会提示「这是从互联网下载的文件」云云,便是这个属性的作用。当用户确认之后,这个属性便会被取消。

当然我们也可以手动移除它,使用 xattr 命令即可。

xattr -d com.apple.quarantine

完。

参考

本作品采用《CC 协议》,转载必须注明作者和本文链接
Former WinForm and PHP engineer. Now prefer Golang and Rust, and mainly working on DevSecOps and Kubernetes.
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!
未填写
文章
67
粉丝
590
喜欢
1235
收藏
1133
排名:13
访问:32.4 万
私信
所有博文
社区赞助商