如何使用PowershellsearchWindowssearch索引文件

现在,我必须在我的networking上find一些文件,这些文件被Windows Search服务索引。 在资源pipe理器search栏上input模式可以在大约10秒左右得到结果,但是当我使用下面的命令时,search通常需要几分钟(2到3分钟)

gci -Recurse -Filter "VaR*.xlsb" 

有没有办法利用索引文件数据库加快我的search?

我找到了我的答案适应一个VBS脚本 Powershell,有代码:

 Function Search { param ( [Parameter(ValueFromPipeline = $true)][string]$Path, [Parameter(Mandatory=$true)][string]$Pattern) if($Path -eq ""){$Path = $PWD;} $pattern = $pattern -replace "\*", "%" $path = $path + "\%" $con = New-Object -ComObject ADODB.Connection $rs = New-Object -ComObject ADODB.Recordset $con.Open("Provider=Search.CollatorDSO;Extended Properties='Application=Windows';") $rs.Open("SELECT System.ItemPathDisplay FROM SYSTEMINDEX WHERE System.FileName LIKE '" + $pattern + "' AND System.ItemPathDisplay LIKE '" + $path + "'" , $con) While(-Not $rs.EOF){ $rs.Fields.Item("System.ItemPathDisplay").Value $rs.MoveNext() } } 

这种方式是快速的。 我测试了大卫指出的答案,速度是3倍,但这个答案只适用于索引文件