使用 powershell 搜索 windows 注册表(特别是)HKLM 非常慢

使用 powershell 搜索 windows 注册表(特别是)HKLM 非常慢

我一直在搜索我的注册表,除了 HKLM 之外,其他一切都运行良好。搜索 HKLM 需要几个小时,而且似乎不起作用。

我正在使用一些 powershell 代码从这里

gci . -rec -ea SilentlyContinue | % { if((get-itemproperty -Path $_.PsPath) -match “<SomeText>”) { $_.PsPath} }

这是在域下的 WinXP 上以管理员身份运行,同时登录到管理员和域管理员。

在出现几个预期的 SAM 安全警告和类似问题后,它继续搜索了几个小时——我可以在注册表中使用 F3 来做得更好。它似乎也没有找到任何东西。有什么想法可以解释为什么它这么慢吗?

另外,顺便提一下,如果我搜索 HKU 和 HKLM,我最终会搜索整个注册表(除了 PERFORMANCE_DATA 和 DYN_DATA)吗?

答案1

这个问题是针对文件系统提出的这里。我认为将其用于注册表也同样适用。我在 PowerShell 团队的博客上链接到了 Lee Holmes 的博客文章。

我希望您可以使用REG.exe/QUERY参数进行更快的搜索。

相关内容