从powershell堆栈问题导出到csv的数组

时间:2013-10-16 20:05:27

标签: arrays powershell csv vmware powercli

我正在为我们的vSphere创建powercli的报告脚本。 我正在尝试创建一个可以导出到csv的数组。 我遇到的问题是我需要有多行输入到数组中,而不是一遍又一遍地输入相同的行。

当我以当前格式运行时,所有发生的事情都是最外面的行报告而没有内部行报告

这是我希望脚本执行的模型。

$report = @()
foreach($D in $data){
$row = "" | select Datacenter, datacenterInfo
$row.datacenter = "kam1"
$row.datacenterInfo = "12"
$report += $row
foreach($F in $D){
    $row2 = "" | select folder, folderInfo
    $row2.folder = "test"
    $row2.folderInfo = "34"
    $report += $row2
    foreach($VM in $F){
        $row3 = "" | select VM, VMInfo
        $row3.VM = "test"
        $row3.VMInfo = "56"
                    $report += $row3
    }
}
}

$report | export-csv -path c:\temp\testy.csv -NoTypeInformation

任何赞赏的帮助

希望数据在excel中作为csv出现,而看起来像这样

datacenter / datacenterinfo
test       / 12
folder     /  folderinfo
test       / 34
VM         / VMInfo
test       / 56

真实的脚本会详细说明数百个VM和文件夹。

1 个答案:

答案 0 :(得分:0)

我知道这个问题并没有真正的解决方案。 但作为解决方法,您可以使用 "$row3.VM \ $row3.VMInfo" | Out-File -append -path "c:\temp\testy.csv" 在你的内心为每个,并手动编写数据为csv。