有没有办法忽略某些模式的Windows搜索索引?
例如,我想跳过以下文件夹:
C:\ GIT中** GIT中\ C:\ Git的** \包\ C:\杂项\混帐混帐** \ C:\杂项\ GIT中** \包\
这些会在搜索结果中产生数千个额外的噪音匹配。
我想索引C:\ misc \ git中的各种文件夹,除了.git或.packages子文件夹中的内容。我只找到了一种静态的方法来做到这一点,而且没有任何基于模式的方法。这似乎是一个常见的用例,有点像git使用.gitignore来保持某些内容不受版本控制的方式。在这种情况下,它会将其保留在搜索索引之外。
我没有在"索引位置"中看到任何类似图案的工具。我假设可以通过运行某种脚本来完成每次内容更改时排除当前匹配(例如添加C:\ misc \ git \ somethingnew),但这与优雅相反。
任何帮助都将不胜感激。
细价
答案 0 :(得分:0)
根据this answer @PryrtCJ Windows注册表项HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Search\CrawlScopeManager\Windows\SystemIndex\WorkingSetRules\
包含允许使用通配符的规则。
要添加此类规则,我建议在索引选项中将一个.git文件夹添加到排除的路径,然后找到正确的密钥(URL会像file:///C:\[partition-or-disk-id]\path\to\.git\
一样)。
然后编辑密钥权限(选择包含.git URL的密钥并右键单击它) - 您需要将密钥所有者从SYSTEM更改为您的帐户,并允许管理员组修改密钥。
如果您有权修改它,请右键单击URL,选择修改并将其内容更改为file:///*\.git\
。稍后恢复以前的权限(只是为了避免问题)。
这样你可以创建任何*过滤器,例如。 file:///C:\misc\*\packages\*