2017-06-23 93 views
-2

我必须在Excel文件中将我的输出导出为csv以在运行查询后更新我的数据。问题:它什么也不做导出PowerShell输出

$csv = Import-Csv .\test1.csv -Delimiter ';' 

$ref = [ordered]@{} 
$columns = foreach ($i in 0..7) { ,[Collections.ArrayList]@() } 

foreach ($row in $csv) { 
    $value = $row.Column1 
    $ref[$value] = $true 
    $columns[0].add($value) >$null 
} 

foreach ($row in $csv) { 
    $i = 1 
    foreach ($col in 'Column2', 'Column3', 'Column4') { 
     $value = $row.$col 
     if (!$ref[$value]) { 
      $columns[$i].add($value) >$null 
     } 
     $i++ 
    } 
} 

$maxLine = ($columns | select -expand Count | measure -Maximum).Maximum - 1 
$csv = foreach ($i in 0..$maxLine) { 
    [PSCustomObject]@{ 
     Column1 = $columns[0][$i] 
     Column2 = $columns[1][$i] 
     Column3 = $columns[2][$i] 
     Column4 = $columns[3][$i] 

    } 
} 


$csv | Format-Table 

该代码可删除匹配的单元格

+1

输出什么替换$csv | Format-Table?请包含初始脚本 –

回答

1

$csv | Export-CSV -Path "C:\folder\file.csv" -NoTypeInformation 
+0

我必须输入一个InputObject,我该怎么办? – charlo

+0

你正在给你输入对象,请参阅编辑答案。 –