我的文本文件包含一个在另一个之下的员工代码列表:
KUMAA286
KUMAA286
MATCHS02
GANNAS
MATCHS02
GANNAS
我想要一个批处理脚本,它可以让我在一个output.txt
文件中计算每个员工代码。
电子。 G:
The number of KUMAA286 is 2
The number of MATCHS02 is 2
The number of GANNAS is 2
答案 0 :(得分:1)
简单:
@echo off
setlocal
rem Read the strings and count each one on its corresponding array element
for /F %%a in (input.txt) do set /A "count[%%a]+=1"
rem Show the results
for /F "tokens=2,3 delims=[]=" %%a in ('set count[') do echo The number of %%a is %%b
答案 1 :(得分:0)
矛盾自己;-)
在将每个条目与前一个条目进行比较之前,您必须对列表进行排序
如果相同的计数
如果不是相同的输出计数和最后一个条目。
要获得不同的计数,请更改此列表:
Dotenv\Dotenv
这批次
KUMAA286
GANNAS
KUMAA286
MATCHS02
GANNAS
GANNAS
将返回:
@Echo off&SetLocal EnableExtensions EnableDelayedExpansion
Set Cnt=-1
Set Last=n/a
For /f %%A in (' Sort Employees.txt') Do (
if %%A neq !Last! (
if !Cnt! geq 1 Echo The number of !Last! is !Cnt!
Set Cnt=1
Set Last=%%A
) Else (
Set /A Cnt+=1
)
)
If %Cnt% geq 1 Echo The number of !Last! is !Cnt!