我在这里搜索信息,以使用 PowerShell v5.1 快速查找所有注册表项属性,并找到一个完美运行的脚本,但我不明白其中一行是如何工作的,也找不到有关它的任何信息。另外,这是我第一次在这里发帖,所以如果我需要纠正任何内容,请告诉我。
这是我希望获得有关其工作原理和原因的更多信息的行:
$rv = 1 | Select-Object -Property Name, Type, Value
我已经阅读了 Select-Object 的手册,但没有看到任何说明它可以创建新属性的信息。是否有人可以分享一个链接,该链接指向我解释如何将字符串通过管道传输到 Select-Object 以创建新属性的信息?
这是脚本:
function Get-RegistryValue
{
param
(
[Parameter(Mandatory = $true)]
$RegistryKey
)
$key = Get-Item -Path "Registry::$RegistryKey"
$key.GetValueNames() |
ForEach-Object {
$name = $_
$rv = 1 | Select-Object -Property Name, Type, Value
$rv.Name = $name
$rv.Type = $key.GetValueKind($name)
$rv.Value = $key.GetValue($name)
$rv
}
}
以下是我找到信息的页面链接: