在注册表子项中查找值并删除它们

Kri*_*son 4 powershell

我正在尝试在PowerShell中编写一个简单的脚本(试图保持一行),它将:

  • 递归列出注册表项中的所有子项
  • 找一个具有特定价值的人
  • 删除上一步中找到的子键的其他值

到目前为止这是我的代码:

Get-ChildItem "HKLM:\Software\Microsoft\KeyToQuery" -Recurse | Where-Object {$_.ValueA -eq "True"}
Run Code Online (Sandbox Code Playgroud)

"KeyToQuery"下面是几个包含相同值的随机名称子项.

这部分工作的第一部分,但Where-Object语句永远不会评估为true.我也试过 - 匹配和 - 似无济于事.

我哪里错了?

CB.*_*CB. 7

试试这个:

Get-ChildItem "HKLM:\Software\Microsoft\KeyToQuery" -Recurse |
ForEach-Object { Get-ItemProperty $_.pspath } |
Where-Object {$_.ValueA -eq "True"}
Run Code Online (Sandbox Code Playgroud)