Powershell 按总和导入CSV分组

Powershell 按总和导入CSV分组,powershell,scripting,powershell-2.0,Powershell,Scripting,Powershell 2.0,我一直在尝试从csv文件中获得有意义的输出 原始输入如下所示 Col1,Col2,Col3,Col4 a,2,b,z a,2,c,x a,1,d,y e,1,f,s e,2,g,t h,1,k,r 我正在尝试实现以下输出(排除col4)并导出到文件,以便使用PowerShell 2进行进一步报告 a 5 b,c,d e 3 f,g h 1 k “我的脚本”函数中的代码是: $data = import-csv $filename.csv | Select-Object -prop

我一直在尝试从csv文件中获得有意义的输出

原始输入如下所示

Col1,Col2,Col3,Col4
a,2,b,z
a,2,c,x
a,1,d,y
e,1,f,s
e,2,g,t
h,1,k,r
我正在尝试实现以下输出(排除col4)并导出到文件,以便使用PowerShell 2进行进一步报告

a  5  b,c,d
e  3  f,g
h  1  k
“我的脚本”函数中的代码是:

$data = import-csv $filename.csv | Select-Object -property Col1,Col2,Col3 $view | Group Col1 | ` select Name,@{ Name="Col2Sum"; Expression = { [math]::round(($_.Group | Measure-Object -Sum Col2).Sum/60,2) } } | ` Sort "Col2Sum" -desc | ft -auto -GroupBy Col | out-file $file.txt $data=import csv$filename.csv |选择对象-属性Col1、Col2、Col3 $view | Col1组|` 选择名称@{ Name=“Col2Sum”; 表达式={ [数学]::舍入($组|度量对象-求和Col2.Sum/60,2) } } | ` 将“Col2Sum”-desc | ft-auto-GroupBy Col | out文件$file.txt排序 我陷入困境的是如何在一行中从Col3生成数组并正确地输出它们

如果有人有任何想法。

你能试试这个吗:

    $a = import-csv C:\temp\F.csv |Group-Object -Property col1 | `
         % {$_.name + " "  + $_.count + " " + `
         ($_.group | % {$i=0;$j=$_.count}{$i++ ; $_.col3 + ","*($j-$i -gt 0)})}
    $a

a 3 b, c, d
e 2 f, g
h 1 k
然后

    $a = import-csv C:\temp\F.csv |Group-Object -Property col1 | `
         % {$_.name + " "  + ($_.group | %{$i=0}{$i+=$_.col2}{$i}) + " " + `
         ($_.group | % {$i=0;$j=$_.count}{$i++ ; $_.col3 + ","*($j-$i -gt 0)})}
    $a

a 5 b, c, d
e 3 f, g
h 1 k