如何缩减 .csv 文件中的 PowerShell 输出以仅写入 Windows 10 操作系统的发布 ID?

如何缩减 .csv 文件中的 PowerShell 输出以仅写入 Windows 10 操作系统的发布 ID?

此脚本可以工作,但 .csv 中 release id 字段的输出是与注册表项相关的所有内容。我想要的字段是 release id 号(1909、1809、1709)。如何编辑此脚本以仅将该信息写入输出文件?下面是我现在得到的输出示例。下面是我正在使用的脚本。

我现在得到的输出。

@{ReleaseId=1909; PSPath=Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion; PSParentPath=Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT; PSChildName=CurrentVersion; PS

我使用的脚本如下。

$Computers = get-content "C:\Temp\computers.txt"

$( foreach ($Computer in $Computers) 
  {
        $result = Invoke-Command -ComputerName $Computer -scriptBlock { Get-ItemProperty -Path 'Registry::HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion' -Name ReleaseId } 
            
        [PSCustomObject]@{
            ComputerName = $Computer
            ReleaseID = $Result
        }
        
    } ) | Export-Csv "C:\Temp\GetReleaseID.csv" -NoType

Invoke-Item "C:\Temp\GetReleaseID.csv"

答案1

用于Select-Object选择对象属性。

Get-ItemProperty -Path 'Registry::HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion' -Name ReleaseId | Select-Object -ExpandProperty ReleaseId 

有关此 cmdlet 运行的详细信息Get-Help Select-Object -Full

相关内容