在 OS X 中停止显示某个文件扩展名

在 OS X 中停止显示某个文件扩展名

我对 OS X 文件扩展名有疑问。我知道在单个文件上,我可以右键单击,选择“获取信息”,然后告诉它不要显示该文件的扩展名。是否有终端命令或其他方法可以完全停止显示某些文件扩展名?

终端中的内容如下:

$ sudo hidefileextension *.por

我试图隐藏的扩展.por名是英雄实验室将其角色组合放在开拓者角色扮演游戏

非常感谢 :)

答案1

Finder 将隐藏扩展名存储为扩展属性,可以使用命令进行修改xattr。首先,如果您有一个带有隐藏扩展名的文件,您应该会在列表中看到权限和 xattr 项后附加一个 @ 符号,然后您可以使用以下命令查看它:

$ ls -l@
-rw-r--r--@   1 user  staff     0B Dec 19 23:41 test.txt
    com.apple.FinderInfo      32B 
$ xattr -px com.apple.FinderInfo test.txt
00 00 00 00 00 00 00 00 00 10 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
$ 

注意到顶行的 1 了吗?这是隐藏扩展标志的十六进制数。根据文件的不同,可能还有其他选项。

要应用该属性,您可以使用以下命令:

xattr -wx com.apple.FinderInfo '0000000000000000001000000000000000000000000000000000000000000000' test.txt

但需要注意的一件重要事情是,如果你已经在文件上有一个 xattr(由权限字段中的 @ 符号指定),那么使用该命令将覆写任何其他 xattrs。您必须采用十六进制表示形式,并对其进行位掩码,覆盖 com.apple.FinderInfo 的当前 xattr。我不确定如何在 bash 中执行此操作,但您可能可以使用 Python 脚本或其他东西来执行此操作。

如果您要经常使用它,我建议您采用该命令并将其放入您的 .bashrc 中。

相关内容