愚蠢的地球人

删除Mac OS文件系统的附加属性

有时候在Mac系统下读写NTFS分区时,会发现一些文件不能打开。提示错误为:
    项目“XXX”已被OS X使用,不能打开。
出现这种情况往往是因为文件被添加了附加属性。

ls -al 命令可以看到:
    -rwxr-xr-x@
文件的读写权限中被加上了一个@符号,这就是 Mac OS X 文件系统的附加属性(extended attributes)。

查看详细的附加属性内容:
    xattr -l filename

彻底删除附加属性的办法:
    xattr -c filename
去除当前文件夹中所有 txt 的附加属性。再次 ls -al 可以发现没有了@符号。

某些博客和贴吧推荐的:
    xattr -d com.apple.FinderInfo XXX.txt
或者其他带有com.apple.****的都可能删除不彻底。只有用-c 参数才能彻底删除。

清除目录下所有文件的属性
    find . -name "*.*" -exec xattr -c {} \;
或者:
    find . -type f -print0 | xargs -0 xattr -c

还有更简单的指令:
    xattr -c -r path
或者
    xattr -rc path

如果路径中有空格或特殊字符的长路径:
打开Terminal.app并开始输入xattr -rc,包含尾随空格,然后将文件或文件夹拖到Terminal.app窗口,它将自动添加正确转义的完整路径。

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

相关推荐

友情链接

网站分类

最新留言

最近发表