gpt4 book ai didi

powershell - 如何在PowerShell中根据列的值拆分CSV?

转载 作者:行者123 更新时间:2023-12-02 23:19:25 26 4
gpt4 key购买 nike

说我有一个像这样的input.CSV

234321, AAA, value1
7751, BBB, value2
32123, AAA, value2
34553, CCC, value4
65433, BBB, value3
43664, AAA, value3

我想根据第二列的值将其拆分为多个CSV。因此,一个 AAA.csv文件,一个 BBB.csv文件,一个 CCC.csv文件等。

我不预先知道所有第二列的值,但是它们最多被限制为100。而且, input.CSV最多包含100000行。

我应该如何进行?

最佳答案

这行得通吗?

$test = @"
col1,col2,col3
234321, AAA, value1
7751, BBB, value2
32123, AAA, value2
34553, CCC, value4
65433, BBB, value3
43664, AAA, value3
"@
$test | Out-File input.csv

$csv = Import-Csv input.csv

$listofcol2values = @()
$listofcol2values = $csv | Select -ExpandProperty col2 -Unique

foreach ($value in $listofcol2values)
{$csv | ?{$_.col2 -eq $value} | Export-Csv ($value + ".csv")}

编辑:

iRon建议的解决方案确实更合适:
Import-Csv input.csv | % {$_ | Export-Csv ($_.col2 + ".csv") -Append}

关于powershell - 如何在PowerShell中根据列的值拆分CSV?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55976445/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com