我有以下代码:

$DataType = "X,Y,Z"
$Data = "1,2,3"
$Table = @()
for ($i = 0; $i -le ($DataType.Count-1); $i++)
{
    $Properties = @{$DataType[$i]=$Data[$i]}
    $Object = New-Object -TypeName PSCustomObject -Property $Properties
    $Table += $Object
}
$Table | Format-Table -AutoSize

我得到以下输出:
X
-
1

我想得到的是:
X  Y  Z
-   -   -
1  2  3

谢谢你的帮助!

最佳答案

简而言之:

$DataType, $Data | ConvertFrom-Csv

X Y Z
- - -
1 2 3

好的,需要一些解释:
PowerShell将自动展开字符串数组($DataType, $Data),并将其作为单独的行项目提供给管道。 ConvertFrom-Csv cmdlet支持通过管道将输入表作为单独的行(字符串)提供。

关于arrays - 在Powershell中将对象追加到数组,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/59492061/

10-13 07:50