来自CMD的平均文件行数

我想计算从CMD的特定文件的平均行数。 要find我得到的一个文件的行数:

findstr /R /N "^" "FILENAME" | find /C ":"

所以我会有这样的东西:

 setlocal enabledelayedexpansion
设置sum = 0
 (1,1,10)中的/ l %% x(
    设置tmpnum = findstr / R / N“^”“文件 -  %% x.csv”|  find / C“:”
     set / a sum = sum + tmpnum
 )
回声%总和%/ 10
 ENDLOCAL

问题是sum总是0,我相信tmpnum没有得到正确的值。

set tmpnum =行是错误的,你不能把一个变量设置为这样的命令的输出。 正确的语法是

 for /l %%x in (1, 1, 10) do ( for /f %%c in ('findstr /R /N "^" "file-%%x.csv" ^| find /C ":"') do ( set /a sum=sum+%%c ) ) 

当然echo %sum%/10也不会计算 – 你需要另一个SET /A