【发布时间】:2021-02-02 23:39:22
【问题描述】:
我需要对 csv 文件的第一列(列可能不同)进行排序。 由于我的 csv 文件有超过一百万条记录,因此执行以下命令需要 10 分钟。
有没有其他方法可以优化代码以加快执行速度?
$CsvFile = "D:\Performance\10_lakh_records.csv"
$OutputFile ="D:\Performance\output.csv"
Import-Csv $CsvFile | Sort-Object { $_.psobject.Properties.Value[1] } | Export-Csv -Encoding default -Path $OutputFile -NoTypeInformation
【问题讨论】:
-
你只做
Import-Csv $CsvFile | Export-Csv ...需要多长时间? IE。Sort-Object真的是这里的瓶颈吗?另外,您是否尝试过here 所述的“从第一行提取”方法?应该会更有效率。 -
10Laks多少钱? -
如果你只做
| Sort-Object会发生什么? -
是瓶颈是排序对象。没有排序对象的执行已在 40 秒内完成。
-
@Theo 1 Lak(h) 是 10^5,所以 10 = 100 万
标签: powershell