計算行數

 把它输出到Measure-Objectcmdlet

Import-Csv C:\Directory\file.csv | Measure-Object


把它输出到Measure-Objectcmdlet Import-Csv C:\Directory\file.csv | Measure-Object

(Import-Csv C:\Directory\file.csv).count


使用IO.StreamReader从磁盘加载文件并使用变量对每行进行计数。这将内存使用量降低到非常合理的25MB,并且要快得多,需要大约30秒来计算1GB文件中的行或6GB文件中的几分钟。不管你的文件有多大,它都不会吃掉不合理的RAM数量:


[int]$LinesInFile = 0

$reader = New-Object IO.StreamReader 'c:\filename.csv'

 while($reader.ReadLine() -ne $null){ $LinesInFile++ }

留言