为什么“打开方式”显示这么多应用程序实例?[重复]


17

当我选择一个文件并右键单击它以使用“打开方式”选项时,我看到了最有可能用于打开该文件的应用程序的列表,但就我而言,运行10.9.5时,我看到了三个(有时是四个)实例每个建议的用于打开该特定文件的应用程序-请参阅随附的屏幕截图。为什么是这样?有没有一种方法可以将每个应用程序的实例数减少到一个?如果是这样,怎么办?

在此处输入图片说明



迈克,我很佩服您在监视方面的努力,但是,我的问题比所谓的重复问题清楚得多。观点的数量证明了其有效性。仅根据标题,您甚至不会知道它是同一主题。
fmz

当问题重述时,我们始终会关闭问题,并为所有答案都指向一个地方。如果您的问题不是该问题的清晰明了的表述,那么将其链接后将其完全删除。随时进行编辑或在meta上提问,是否可以帮助我们指出如何更正启动服务的更好的规范答案。它已经存在了很长一段时间,我认为它不会很快改变。
bmike

而且,一如既往- 如果您不确定为什么要进行审核或希望获得与当前情况不同的结果,请在Ask Different Meta提问。更多地关注线程通常可以帮助所有人-包括我在内。感谢您的反馈。
bmike

Answers:


15

重建LaunchServices以修复OS X的“打开方式”菜单中的重复条目

要解决此问题,我们需要重置OS X的LaunchServices数据库。与OS X中的大多数操作一样,有多种方法可以完成此任务,但是最快的方法是简单地使用终端命令。

从该文章中复制以下内容到您的终端

/System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Support/lsregister -kill -r -domain local -domain system -domain user

您的解决方案等同于grgarside的解决方案。我的Terminal-fu不足以准确地解析它们,但是它们看起来应该相似。
Tetsujin

1
@Tetsujin他们是等效的。前者的球遍及后者。
grg

7

这是OS X中一个长期存在的错误。您可以使用lsregister进行修复:

/Sy*/L*/Fr*/CoreS*/F*/L*/S*/lsregister -kill -r -domain local -domain system -domain user

1
如果您如此友善并提供一些参考,您将只知道我们所有人的标准程序。
罗斯,2014年

1
@Buscar我没有具体的引用—这是我在参考列表之一中拥有的命令之一。
grg

2
嘿,看起来像是来自Code Golf的东西;)
Doorknob 2014年

4

除其他答案外,它还可以显示其他硬盘驱动器或备份副本上存在的多个副本。如果将应用程序备份到该驱动器,则用于Time Machine备份的外部硬盘驱动器可能会显示为一个选项。

如果您想知道应用程序的来源,请打开其他应用程序之一。然后在Dock中,按住Control键并单击应用程序图标,然后选择:选项>“在Finder中显示”。这将向您显示应用程序在哪里。

使用Buscar웃提供的命令行来更新系统的LaunchServices。


2

为了扩展grgarside和Buscar提供的答案,您可以通过在.bashrc脚本中定义别名来减轻痛苦。为此,请打开Terminal.app并使用您喜欢的文本编辑器(如果愿意,可以使用vi,nano,emacs)进行编辑.bashrc以在最后添加以下行:

alias rmdup="/System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Support/lsregister -kill -r -domain local -domain user; killall Finder"

请注意,该rmdup名称只是我选择的别名,以便以后方便记住该命令(它的意思是扩展为“删除重复项”)。您可以选择其他任何喜欢的别名,请注意不要使用已经用于其他命令的名称。

更改.bashrc后,如果再次注意到重复的应用程序,则可以打开Terminal.app并键入rmdup或选择其他名称,而不是lsregister带有所有参数的命令的完整路径,等等。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.