如何单独获取registryKey名称而不是完整的注册表键路径?

时间:2012-07-13 13:31:36

标签: powershell registry powershell-v2.0

我试图从注册表项

获取所有子注册表项
$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

如何单独获取密钥名称?

2 个答案:

答案 0 :(得分:5)

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

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

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

$componentName | Split-Path -Leaf

答案 1 :(得分:4)

喜欢这个?

 $ComponentName=$Components | select pschildname