2014-12-05 101 views
0

我知道這個問題已經回答了很多次,所以我很抱歉再次提問。我編寫了我的第一個Power Shell腳本來執行聚合任務。我不知道如何追加到現有的CSV文件。現在我的腳本只是聚合列,我想修改它來聚合多個列,所以我需要追加我的輸出。電源外殼追加與export-csv

我輸入文件看起來像這樣:

SalesID Qty Amount 
1  2 5 
1  3 6 
2  5 9 
2  6 5 

我的電流輸出爲:

SalesID  Sum 
1   5  
2   11  

但我所要的輸出是這樣的:

SalesID Sum Amount 
1  5  11 
2  11 14 

我的腳本:

import-csv $inFilePath | Group-Object $GroupByColumName| %{ 
    New-Object psobject -Property @{ 
     $GroupByColumName= $_.Name 
     Sum = ($_.Group | Measure-Object $SumColumnName -Sum).Sum 
    } 
}| 
export-csv $outFilePath -encoding "UTF8" -notype 

請幫我在這裏。謝謝。

+0

前救人時,你應該把什麼'$ GroupByColumName'和'$ SumColumnName'是 – Matt 2014-12-05 19:34:57

回答

1

該信息已經存在,供您訪問,只需要獲取即可。

$data | Group-Object SalesID | %{ 

    New-Object pscustomObject -Property @{ 
     SalesID = $_.Name 
     Quantity = ($_.Group.Qty | Measure-Object -Sum).Sum 
     Amount = ($_.Group.Amount | Measure-Object -Sum).Sum 
    } 
} | Select-Object SalesID,Quantity,Amount | export-csv $outFilePath -encoding "UTF8" -notype 

對於每個salesID,我們得到他的數量和金額的總和。下面是控制檯輸出

SalesID Quantity Amount 
------- -------- ------ 
1    5  11 
2    11  14 
+0

是的。我只是想出了它。不管怎麼說,還是要謝謝你 :) – St5987 2014-12-05 19:48:55