这样可以不?
将代码保存为ANSI编码的bat,放在A.txt所在目录下运行,另外需要A.txt的编码为gbk,还有注意同次数的字符过多可能出错,循环65536次后会退出
也可以直接在命令行窗口输入
gawk -f 代码文件名 文本文件名
来查看所有的次数结果- # 2>nul&cls&@echo off&set "file=A.txt"
- # 2>nul&for /f "tokens=1* delims= " %%a in ('gawk -f "%~f0" "%file%"') do set _%%a=%%b
- # 2>nul&setlocal enabledelayedexpansion
- # 2>nul&for /l %%a in (0,1,65535) do (echo,&set /p n=请输入N的值 N=&echo,&for %%a in ("!n!") do echo,!_%%~a!)
- # 2>nul&endlocal&pause&exit/b
-
- BEGIN{
- FS=" "
- while((getline <ARGV[1])>0){
- for(i=1;i<=NF;i++)
- A[$i]++
- }
- for(i in A){
- B[A[i]]=B[A[i]]?B[A[i]]" "i:i
- }
- for(i in B)print i,B[i]
- }
复制代码
|