用bat对付一万行的数据,到1.4秒貌似下不去了:- @echo off & setlocal enabledelayedexpansion
-
- echo %time% - 开始
-
- for /l %%a in (0 1 99) do (
- set /a B=10%%a,L=200-%%a
- set B%%a=!B:~-2!
- set L%%a=!L:~-2!
- )
-
- set B100=xx
- set L100=--
-
- echo %time% - 构建映射表
-
- (for /f "skip=1 tokens=1-5" %%a in (test.txt) do (
- echo !B%%a!!L%%b!!B%%c!!L%%d!!B%%e! %%a %%b %%c %%d %%e
- ))>tmp.txt
-
- echo %time% - 输出临时文件
-
- (echo 语文 数学 英语 化学 生物
- for /f "tokens=1*" %%a in ('sort tmp.txt') do echo %%b
- )>out.txt
-
- echo %time% - 结束
-
- pause & exit /b
复制代码 附测试数据生成脚本- @echo off & setlocal enabledelayedexpansion
- (echo 语文 数学 英语 化学 生物
- for /l %%a in (1 1 10000) do (
- set /a R1=!random!%%101,R2=!random!%%101,R3=!random!%%101,R4=!random!%%101,R5=!random!%%101
- echo !R1! !R2! !R3! !R4! !R5!
- ))>test.txt
- pause
复制代码
|