5

我试图从注册表项中获取所有子注册表项

$Key="hklm:\SOFTWARE\Wow6432Node\MyCompany\MyProj"
$ComponentKeys=Get-ChildItem -path $Key 
$ComponentName=$Components | Select-object Name
$ComponentName

它显示如下结果

Name
----
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\MyCompany\MyProj\Service
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\MyCompany\MyProj\UserInterface
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\MyCompany\MyProj\DataSetView
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\MyCompany\MyProj\Notification
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\MyCompany\MyProj\Model
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\MyCompany\MyProj\Management

但我只想检索子项名称而不是全名。

我需要如下结果

Name
----
Service
UserInterface
DataSetView
Notification
Model
Management

如何单独获取密钥名称?

4

2 回答 2

7

您只能使用名称开关获取名称:

$Key="hklm:\SOFTWARE\Wow6432Node\MyCompany\MyProj"
Get-ChildItem $key -Name

如果变量中已有路径,请使用Split-Pathcmdlet:

$componentName | Split-Path -Leaf
于 2012-07-13T16:22:53.083 回答
4

像这样?

 $ComponentName=$Components | select pschildname
于 2012-07-13T13:40:09.107 回答