从 Mac OS X 中的“打开方式”右键单击菜单中删除重复项

修复 Open WIth 菜单并删除重复的应用程序条目

当右键单击(或按住 control 单击)Mac Finder 中的任何文件时,“打开方式”菜单会出现,它旨在提供可供选择的文件可以打开的替代应用程序列表。当前设置为作为默认应用程序。这个 Open With 很棒,但有时它会因同一个应用程序的重复条目而变得异常混乱,在最坏的情况下,它甚至不会只是在这里和那里重复,它会出现在打开列表。我们将向您展示如何删除这些重复条目以及如何制作更易于使用的别名以供将来使用。

在 OS X 的“打开方式”菜单中删除重复的应用条目

这应该适用于几乎所有版本的 Mac OS X

  • 从 /Applications/Utilities/ 目录启动终端并在一行中输入任一个以下命令字符串:

从单行命令字符串复制和粘贴:

/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/Support/lsregister -kill -r -domain local -domain userkillall Finderecho "Open With 已重建,Finder 将重新启动"

相同的命令字符串分成多行:
/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/
LaunchServices.framework/Versions/A/Support/
lsregister -kill -r -domain local -domain user

(注意:第二个命令中的反斜杠用于将长命令扩展到多行,同时在复制和粘贴时仍然使它们可执行,如果您手动将命令字符串键入到终端)

这可能需要一段时间,因为必须重建整个 Launch Services 数据库,并且在重建过程中将从右键单击菜单中删除重复的应用程序条目。完成后,您必须退出并重新启动 Finder 以使更改生效,这也是从命令行执行最简单的操作:

killall Finder

现在当 Finder 重新启动时,返回到任何文件并右键单击它,下拉“打开方式”菜单以查看所有重复的条目都消失了。

在 OS X 中删除重复菜单打开

但是如果你必须经常这样做怎么办,那个命令字符串有点烦人吧?以下是大幅缩短它的方法:

创建一个简短的“Remove Open With Duplicates”别名

如果您发现自己必须比您希望的更频繁地执行此操作,那么为整个命令序列创建一个简单的 bash 别名可以节省大量时间,因为它将消除输入一系列冗长的命令字符串的需要。

  • 使用您最喜欢的文本编辑器打开 .bash_profile,我们在本演练中使用 nano,因为它很简单:
  • nano .bash_profile

  • 将以下别名粘贴到 .bash_profile 的一行中,如果您愿意,可以重命名别名
alias fixow='/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/Support/lsregister -kill -r -domain local -domain userkillall Finderecho "打开方式已重建,Finder 将重新启动"'
  • 按 Control+O 保存,然后按 Control+X 退出 nano

通过在命令行中键入“fixow”来验证别名是否有效,但如果您已经清除了“打开方式”,则不会产生相同的效果。如果您使用与上面完全相同的命令字符串,您将收到一条回显给您的小消息,如下所示:

$ fixow
Open With 菜单已重建,Finder 将重新启动

如果由于某种原因您无法获取该代码,您也可以从 OSXDaily GitHub 页面,我们开始收集一些特别有用的 OS X shell 脚本。

这使您只需键入“fixow”(Fix Open With 的缩写,明白了吗?我们确实很有创意),整个命令字符串将执行,而无需再次键入整个内容。

我可以从“打开方式”菜单中删除所有应用吗?

如果您的问题超出了重复或重复的条目,另一种选择是清除整个打开方式菜单并从头开始。这会将所有内容都从菜单中移除,迫使您自己手动将应用程序与文件类型和格式相关联,或者仅通过使用 OS X 打开特定文件。如果您想自己重建列表并对关联更有选择性,这确实是一种不得已的方法,或者用于超级定制。