2016-11-16 156 views
0

从主CSV文件创建文件我有一个具有约10 k行的CSV转储。我试图根据使用Powershell的商店字段将其分成多个文件。根据字段

主文件内容

Date, Store, Product 
11/16 NYC 100 
11/16 NYC 101 
11/16 BOS 100 
11/16 BOS 101 

基于此数据,我需要为纽约市和BOS文件的另一个与其对应的内容。

我想要的东西很快。我想过循环每一行,然后检查行并比较,但我认为它可能太慢了。

后来我想使用组对象cmdlet

import-csv C:\masteFile.csv | Group-Object{$_.store} 
The output is 
Count Name Group 
2  NYC {@{DATE=11/06; STORE=NYC; PRODUCT=100},{@{DATE=11/06; STORE=NYC; PRODUCT=101}} 
3  BOS {@{DATE=11/06; STORE=BOS; PRODUCT=100},{@{DATE=11/06; STORE=BOS; PRODUCT=101}}... AND SO ON 

我想从每个对象的内容,并创建一个新的文件。

回答

2

尝试运行

Import-Csv C:\masteFile.csv | Group-Object Store | ForEach-Object { $_.Group | Export-Csv "$($_.Name).csv" } 

它读取输入文件,组输入的内容,然后对每个组中的结果创建一个新的csv文件,含有该基团的内容中,具有组的名称。

+0

非常感谢。我喜欢这个! – causita