问题标签 [spotlight]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
macos - 使用 mdfind 搜索文件的 Bash Shell 脚本
我有一个包含大约 350 张图像的文件夹(它们是扫描的食谱)。为了更容易找到它们,我用 bash shell 脚本编写了一个搜索程序。我在 Mac OS X 10.8 Mountain Lion 上有 bash 版本 3.2。
我的程序的基本思想:
- 向用户询问搜索词(使用 osascript)。
- 使用 mdfind 在文件(名称)中搜索搜索词。
- 将匹配的文件发送到 ln(通过 xargs)。
- 在“结果”目录中创建匹配文件的硬链接。此目录包含在同一图像文件夹中(此目录在程序开始时被清理)。
目录的样子:
这是我的代码:
它工作得很好——第一次。如果你搜索相同的东西两次,它就会中断。
解释:假设我搜索“鸡”。34 个文件匹配,并在结果目录中建立硬链接。
现在,我再次运行程序,并搜索相同的东西——“鸡”。目录被清空(按rm
)。但是现在,查找/链接停止工作——只有 6 或 7 个食谱将被链接。似乎正在发生的事情是mdfind
在搜索目录中找到结果,在它们被删除之后,然后ln
无法建立链接。但它没有找到主要文件......我明白了
我查看了用于创建符号链接的 mdfind 未按预期工作;他们有类似的问题(但没有帮助)。
感谢您的帮助...这一直困扰着我很长时间。
python - 使用python从文件中获取聚光灯评论
我正在尝试使用 python 获得聚光灯评论。我现在需要的只是让 popen 能够返回运行相同的东西时 shell 通常会输出的任何内容。一旦我在python中有一个字符串,我就可以正确过滤它。
macos - Finder Get Info 中未显示自定义文档类型的其他属性
我的 Spotlight 插件为自定义文档格式导入了几个属性。
搜索它们工作得很好,但我无法让它们显示在Finder 的“获取信息”对话框中。
这是schema.xml(解析很好mdcheckschema
):
是否有工具可以调试是否使用了模式......?
还要查看/System/Library/Spotlight/
其中许多导入器根本不包含schema.xml(默认的 Xcode 4.x Spotlight Importer 项目也不包含,但这可能是一个错误)所以开始怀疑..
macos - 某些文件的新自定义导入器偶尔会导致 mdworker 崩溃
我的Spotlight 导入器正在从我的应用程序的数百个文档文件中导入元数据。
在带有各种文件的 Xcode 调试器下一切正常。但是,一旦将导入程序安装在系统上,运行导入程序时, mdworker 进程会因 300 多个文件而崩溃两次。
堆栈跟踪对指示问题没有多大帮助(一些 STL 库位置) - 有没有办法为在 Spotlight 服务器的现场运行的导入程序打开更多调试信息?
特别是触发崩溃的文件的名称?
任何提示表示赞赏。
macos - mdfind 查询奇怪的行为
看看这个 mdfind 查询:
有什么问题吗?也许合乎逻辑OR
- ||
Apple 在mdfind
手册页上没有记录?
在 99% 的情况下,mdfind
返回每个应用程序的三个文件路径/位置iwork
(或未安装时不返回任何内容)。
但是在〜1-5%(10.8.2)中,我从mdfind
:
我的mdfind
查询有问题吗,或者有什么问题Spotlight database
吗?
当然有可能:在 Spotlight 中引入10.7.5
和10.8.2
更新存在严重错误(检查https://discussions.apple.com/message/19863234#19863234)
谢谢 :-)
macos - 创建分组表视图
谁能让我知道创建NSTableView
类似于 Spotlight 结果的分组的程序是什么。
macos - 搜索字符串谓词
我正在尝试使用 NSMetaDataQuery 创建搜索查询并部署如下谓词:
我面临的问题是:
假设我有应用程序名称:Google Chrome。
如果我搜索“google”作为搜索字符串,我可以得到结果,即“Google Chrome”,但如果我搜索“chrome”,我无法搜索“Google Chrome”。
同样,如果搜索字符串为“Suhail”,则显示结果为“Suhail hats no one”,但如果搜索字符串为“hates”,则结果不显示任何内容。
还有一种情况:假设文件名为“faMee”。
我搜索“amee”,结果什么都没有。我搜索“mee”,结果什么都没有,但在聚光灯下是我搜索“mee”,它向我显示文件“faMee”。
请有任何建议。
macos - 如何对 NSMetadataQuery 的结果进行分组
我正在对本地数据执行查询(NSMetadataQuery),因为聚光灯执行并根据文件的修改日期对结果进行排序,到目前为止一切正常。但是我无法理解我们如何对结果进行分组,例如我想要一组中的应用程序,其他组中的文档和图像组中的图像(类似于聚光灯的作用),任何人都可以建议如何去做。
objective-c - 使用 NSMetadataQuery 或 MDQuery 设置批处理参数
如果有人分享如何使用以下方式完成查询批处理,那将很有帮助 -
与 NSMetadataQuery 一起使用或使用
与 MDQuery 类一起使用时的结构。
我对批处理的理解是 - NSMetadataQueryGatheringProgressNotification/kMDQueryProgressNotification 观察者根据 timeInterval/MDQueryBatchingParams 中给出的值得到通知。
当我将 0.001f 传递给 timeInterval 的值时,我希望它每 1 毫秒通知一次方法,但事实并非如此。
objective-c - 作为参数传递给 MDQuerySetSortComparatorBlock (Spotlight API) 的块未被调用
我尝试在 MDQuery 框架内使用 MDQuerySetSortComparatorBlock 方法对查询结果列表进行排序。但是,作为参数传递给该方法的块根本不会被调用。下面是我用来发出查询请求的一段代码。任何帮助表示赞赏。