以下是我用 timeit.exe 测试的数据,分别测试这三条命令:
find /v /c "" 1.txt
2.bat
type 1.txt|find /v /c ""
2.bat 的内容是:
@echo off
for /f %%a in (1.txt) do set /a n+=1
echo %n%
测试结果:
Average for find key over 288 runs
Version Number: Windows NT 5.1 (Build 2600)
Exit Time: 8:00 am, Monday, January 1 1601
Elapsed Time: 0:00:00.128
Process Time: 0:00:00.059
Average for for key over 288 runs
Version Number: Windows NT 5.1 (Build 2600)
Exit Time: 8:00 am, Monday, January 1 1601
Elapsed Time: 0:00:00.024
Process Time: 0:00:00.037
Average for type key over 288 runs
Version Number: Windows NT 5.1 (Build 2600)
Exit Time: 8:00 am, Monday, January 1 1601
Elapsed Time: 0:00:00.106
Process Time: 0:00:00.046
按想象我也认为直接 find 速度更快,而经由 type 再管道给 find 更慢。但测试下来,我测试了一个 4MB 的文本,感觉是 type 的快一些,不太相信,于是用 timeit 计算了下,确实是这样。
Last edited by tireless on 2008-11-10 at 10:48 ]