本帖最后由 思想之翼 于 2023-3-3 14:39 编辑
下述批处理代码是计算多个文本数据的总个数的。
如有若干txt文本,每个文本数据格式为:数据+个数,比如下面1个文本数据是:
1 23
9 23
0 22
3 22
4 22
5 22
8 22
6 22
2 21
7 20
其表示数据1有23个,数据9有23个,数据0有22个......
现在欲将若干txt文本中数据汇总,统计各个数据的总个数,并按总个数从多到少进行排序,结果写入新建的txt文本。
比如2个txt文本,数据均为
1 23
9 23
0 22
3 22
4 22
5 22
8 22
6 22
2 21
7 20,
统计总个数,应该为
1 46
9 46
0 44
3 44
4 44
5 44
8 44
6 44
2 42
7 40
但是,运用下述代码,却得不到这样的结果。问题出在哪?恳望得到大家的帮助!- @echo off&setlocal enabledelayedexpansion
- for %%a in (*.txt) do (
- for /f "tokens=1,2 delims= " %%i in (%%a) do (
- set /a #%%i+=%%j
- )
- )
- for /f "tokens=1,2 delims==#" %%a in ('set #') do (
- set "num=//////////%%b"
- set "$!num:~-10!=%%a"
- )
- (for /f "tokens=1,2 delims==$/" %%a in ('set $^|sort /+1000') do echo %%b %%a)>ok.txt
- start ok.txt
复制代码
|