Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/google-maps/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用powershell在注册表中搜索特定的值名称及其关联的数据项_Powershell - Fatal编程技术网

使用powershell在注册表中搜索特定的值名称及其关联的数据项

使用powershell在注册表中搜索特定的值名称及其关联的数据项,powershell,Powershell,我正在尝试搜索注册表(HKLM:\Cluster\Resources)中匹配=VirtualServerName的任何值名称。并将其关联的数据键输出到数组 例如: Name Type Data VirtualServerName REG_SZ SQLDEP05 但是我找不到使用Get ItemProperty命令进行定期搜索的正确开关 因此,我尝试使用Get ChileItem insted: $Reg = "HKLM:\Cluster\Re

我正在尝试搜索注册表(HKLM:\Cluster\Resources)中匹配=VirtualServerName的任何值名称。并将其关联的数据键输出到数组

例如:

      Name            Type     Data
VirtualServerName    REG_SZ   SQLDEP05
但是我找不到使用Get ItemProperty命令进行定期搜索的正确开关

因此,我尝试使用Get ChileItem insted:

$Reg = "HKLM:\Cluster\Resources\"
Get-ChildItem -recurse "$Reg" | Select-Object -Property VirtualServerName -ExcludeProperty $exclude | ForEach-Object { $_.PSObject.Properties.Value }
仅当im使用$\ PSObject.Properties开关中的.Name选项时,此选项才有效

但当我试图获取VirtualServerName的值时,.value

$Reg = "HKLM:\Cluster\Resources\"
Get-ChildItem -recurse "$Reg" | Select-Object -Property VirtualServerName -ExcludeProperty $exclude | ForEach-Object { $_.PSObject.Properties.Value }

我没有得到任何输出。

使用
Where Object
测试特定键下是否存在值名,该键具有:

现在您已经获得了相关的键,可以使用
Get ItemProperty
获取值数据:

$Keys |Get-ItemProperty VirtualServerName
或:


谢谢,成功了。但是有没有一种方法可以过滤输出,这样我就只能得到值本身?仅表示VirtualServerName和InstanceName的值。。因为目前我在输出中得到了很多不相关的数据
$Keys |Get-ItemProperty VirtualServerName
$Keys |ForEach-Object {
  $_.GetValue('VirtualServerName')
}