如何在Mac上找到所有非 App Store上的应用程序?是否可以使用Finder搜索查询找到所有这些应用程序?
如何在Mac上找到所有非 App Store上的应用程序?是否可以使用Finder搜索查询找到所有这些应用程序?
Answers:
下面的屏幕快照显示了如何使用Finder搜索查询来查找不是来自App Store的所有应用程序。“原始查询”条件为kMDItemAppStoreHasReceipt != 1
。我认为,这与测试patrix答案中名为“ _MASReceipt”的目录相同。但是对于不习惯使用Terminal的人来说,使用Finder搜索查询应该更容易。
kMDItemCFBundleIdentifier != "com.apple.*"
。这会过滤掉Apple应用程序,例如不是来自App Store而是macOS的各种应用程序(邮件,Safari,iTunes等)。
/Applications
(至少默认情况下),因此该文件夹之外的任何应用程序都不来自存储中。商店中的应用程序都有一个NAME.app/Contents/_MASReceipt
文件夹,因此您可以使用(在终端中)
cd /Applications
for i in *.app; do
[[ -d "$i/Contents/_MASReceipt" ]] || echo $i
done
查找所有非商店应用程序
bash
Terminal中的默认设置,我通常假设任何有足够经验来切换shell的人也都有足够的经验使bash特定的东西适应他们所选择的shell。或者使用[ ... ]
的,而不是[[ ... ]]
mdfind 'kMDItemContentType == "com.apple.application-bundle" && kMDItemAppStoreHasReceipt != 1'
。要查找确实来自App Store的应用程序,请将其更改!= 1
为== 1
。还有其他一些与App Store相关的Spotlight属性,例如,以检查其Keynote的值:mdls /Applications/Keynote.app | grep kMDItemAppStore
。