Mac OSX 10.6
我有一些指向错误音量的别名。我想在整个层次结构中搜索这些别名。它们是别名,而不是符号链接,所以我不能只做find / -type l -ls | grep badVolumeName
。
似乎别名有一个com.apple.ResourceFork,但用xattr
查询它给了我二进制数据。有没有办法将别名的目标转储为文本,以便我可以为坏卷名称grep?或者是另一种方法呢?
答案 0 :(得分:3)
要查找别名文件,您可以使用this answer on StackOverflow。首先,创建一个脚本is_alias.sh
:
#! /bin/bash
[ "$(mdls -raw -name kMDItemKind "$1")" = "Alias" ]
然后运行
find . -type f -exec ./is_alias.sh {} \; -print
获取别名的路径似乎非常困难。
Someone已经发布了使用MacPerl的解决方案,但由于我没有MacPerl,我没有对此进行测试,也不知道它是否有效。
AskDifferent上有一个similar question,有几个不同的建议,但似乎没有一个真正解决问题。 Applescript的答案还可以,但获取别名文件的“原始项目”的关键操作似乎不适用于损坏的别名。
您还可以查看可能有一些Cocoa解决方案的this question。