powershell - PowerShell:获取给定子键名称和值的注册表键名称
问题描述
我正在尝试返回给定子键名称和值的注册表键名称。例如,如果存在:
HKLM:\Software\key1\home1 home_val=C:\dir1
HKLM:\Software\key2\home2 home_val=C:\dir2
我希望能够返回具有 sub-key=home_val=C:\dir1 的键名
我几乎在那里,但不知道如何返回键名。我想出了以下几点:
Get-ItemPropertyValue -Path 'HKLM:\SOFTWARE\key*' -Name HOME_VAL | Select-Object -Property 'C:dir1'
解决方案
你的代码给了我这个错误......
Get-ItemPropertyValue:路径 HKEY_LOCAL_MACHINE\SOFTWARE\key1 中不存在属性 HOME_VAL
...当它遇到没有HOME_VAL
值的键时。
这对我来说可以获得完整的关键路径......
PS> $filterValueName = 'home_val'
PS> $filterValueData = 'C:\dir1'
PS> Get-ChildItem -Path 'HKLM:\SOFTWARE\key*' -Recurse `
| Where-Object { ($_ | Get-ItemProperty -Name $filterValueName).$filterValueName -eq $filterValueData } `
| Select-Object -ExpandProperty 'Name'
HKEY_LOCAL_MACHINE\SOFTWARE\key1\home1
这将枚举任何键下的所有后代键HKLM:\SOFTWARE\key*
,选择那些具有以home_val
数据命名的值C:\dir1
并提取其Name
属性的键。如果您想要键名而不是其路径,则可以选择PSChildName
属性。
推荐阅读
- cassandra - Cassandra - 获取特定时间范围内的所有数据
- statsmodels - ARIMA 模型:plot_diagnostics 共享错误
- android - 循环阻止异步请求被执行。为什么以及如何解决?
- c++ - 指向指针的指针的 reinterpret_cast
- flutter - Flutter 中使用 Http Post 上传正文
- javascript - reactjs处理滚动元素以查看其是否可见
- python-2.7 - 传递函数,为什么需要 lambda
- r - 如何在 Rinto 数据框中解析复杂的 xml?
- firebase - 我想在本地调用 firestore 函数
- java - 将值插入二维数组