我遇到一个奇怪的问题,即Matlab顽固地拒绝出现在Spotlight搜索结果中。
除了应用程序中明确存在的信息外,我不确定要提供什么信息:
它甚至可以很好地出现在启动板中:
我没有被Spotlight索引阻止的任何内容:
但是,即使在Spotlight中搜索确切的名称也只会产生一些崩溃日志。
Spotlight搜索对于其他任何应用程序也都可以正常工作,并且可以更新(例如,我刚刚搜索了我制作的屏幕截图,并找到了它们),因此它不仅“卡住了”。
有任何想法吗?
我遇到一个奇怪的问题,即Matlab顽固地拒绝出现在Spotlight搜索结果中。
除了应用程序中明确存在的信息外,我不确定要提供什么信息:
它甚至可以很好地出现在启动板中:
我没有被Spotlight索引阻止的任何内容:
但是,即使在Spotlight中搜索确切的名称也只会产生一些崩溃日志。
Spotlight搜索对于其他任何应用程序也都可以正常工作,并且可以更新(例如,我刚刚搜索了我制作的屏幕截图,并找到了它们),因此它不仅“卡住了”。
有任何想法吗?
Answers:
转到System Preferences --> Spotlight --> Privacy
。打开后,转到Finder --> Applications
并将Matlab从Applications
拖入Privacy
。关闭System Preferences
并重新打开它,然后从同一位置删除Matlab。
这将强制为重新编制索引Spotlight
。我已经为某些人而不是其他人看到了这项工作,但是值得一试。
在终端中,输入:
sudo mdutil -E /
我尝试了Preferences --> Spotlight --> Privacy
该/Applications
文件夹的建议,但对我而言不起作用。
然后我sudo mdutil -E /Applications
在一个终端中尝试了,那也不起作用。
Preferences --> Spotlight --> Privacy
在整个磁盘上使用建议也可能会起作用,但是无论如何,我发现sudo mdutil -E /
在命令行上键入单个命令()更容易。
该命令开始重新索引过程,然后迅速退出,因此运行它可能需要一段时间才能使您的应用程序可以通过Spotlight进行访问。查看是否仍在建立索引的一种简单方法是启动Spotlight(命令空间)并输入至少1个字符。如果正在重新编制索引,它将在文本输入字段下方显示“正在编制索引”。
我从未尝试过,但是mdimport -d1 /Applications/Matlab_R2015b.app
在终端中运行也可以。您可以将数量增加到最多4个,以增加调试信息,这可能会告诉您为什么索引不起作用。您可以在mdimport
的手册页中找到其他命令行选项。
sudo mdutil -E /Applications
也许也值得一试。
最近我遇到了一个非常类似的问题,其中一些应用程序在将所有数据移至新的Mac之后只是不想显示。我尝试了所有建议的解决方案,但没有任何帮助。更详细地检查了这些应用程序,我注意到它们具有“扩展的ATTRibutes”(xattr
),其名称为:
com.apple.finder.copy.source.inode#N
com.apple.finder.copy.source.volumeuuid#N
这些属性以及其他属性是在Finder中复制文件时设置的。如果您想知道为什么要复制的应用程序会变灰,直到复制完成,以及Finder如何在Finder窗口本身(而不仅仅是在复制对话框中)显示复制进度-都是通过不同类型的属性来完成的在文件上进行设置,并告诉系统该文件/文件夹/捆绑包正在复制,并且已经复制了多少。
通常,Finder在复制后会删除所有这些属性,但是以某种方式这些属性卡在我的案例中,并且设置了这些属性后,Spotlight拒绝显示应用程序,以为它们仍在复制过程中。
我必须手动删除它们才能解决该问题:
xattr -d com.apple.finder.copy.source.inode#N PATH
xattr -d com.apple.finder.copy.source.volumeuuid#N PATH
随着PATH
正在给应用程序的完整路径(刚刚从Finder中拖动它到一个终端窗口,完整的路径是写在那里)。根据访问权限/所有权,您可能必须在命令之前加上命令sudo
以获取扩展权限。
我认为与全世界分享这些信息可能会有所帮助,这就是为什么我在这里发布它。