PowerShell哈希表顺序

问题描述 投票:-1回答:2

以下脚本在for-each循环中运行,输出标题的顺序不正确。我想要输出顺序,就像我在哈希表中提到的那样。我希望CSV表列标题顺序正确,而不是表中的数据。

像1.Machine_Name,2.Ping_Status,3.OS_Name

我怎么解决这个问题?

$Result = @{
            MACHINE_NAME     = "$_"
            PING_STATUS      = "MACHINE ONLINE"
            OS_NAME = "$OSNAME"
        }

$Details += New-Object PSObject -Property $Result
$Details | export-csv -Path $pathofcsv -NoTypeInformation
powershell powershell-v3.0 powershell-v4.0
2个回答
2
投票

要强制执行订单,请使用Select-Object

$Details | Select-Object MACHINE_NAME, PING_STATUS, OS_NAME | export-csv -Path $pathofcsv -NoTypeInformation

5
投票

使用有序哈希表:

$Result = [ordered]@{             
            MACHINE_NAME     = "$_" 
            PING_STATUS      = "MACHINE ONLINE"
            OS_NAME = "$OSNAME"
        }

$Details += New-Object PSObject -Property $Result
$Details | export-csv -Path $pathofcsv -NoTypeInformation
© www.soinside.com 2019 - 2024. All rights reserved.