Board logo

标题: [文本处理] [已解决]批处理如何根据一个txt文本的行内容查找统计另一个txt文本相同行的行数? [打印本页]

作者: web    时间: 2014-3-25 22:32     标题: [已解决]批处理如何根据一个txt文本的行内容查找统计另一个txt文本相同行的行数?

本帖最后由 pcl_test 于 2016-7-11 10:32 编辑

a.txt
  1. 05 06 07 08 10 11
  2. 05 06 07 08 10 12
  3. 05 06 07 08 10 13
  4. 05 06 07 08 10 14
  5. 05 06 07 08 10 15
  6. 01 02 03 04 05 15
  7. 01 02 03 04 05 16
  8. 01 02 03 04 05 17
  9. 01 02 03 04 05 18
  10. 01 02 03 04 05 19
  11. 01 02 03 04 05 20
  12. 01 02 03 04 05 21
复制代码
b.txt
  1. 05 06 07 08 09
  2. 05 06 07 08 10
  3. 06 07 08 09 25
  4. 06 07 08 09 26
复制代码
  1. @echo off
  2. for /f "tokens=1-5 delims= " %%a in (b.txt) do (
  3.     set a=%%a
  4.     set b=%%b
  5.     set c=%%c
  6.     set d=%%d
  7.     set e=%%e
  8.    
  9.     setlocal enabledelayedexpansion
  10.     echo !a! !b! !c! !d! !e!
  11.    
  12.     findstr /c:"%%a" a.txt|findstr /c:"%%b"|findstr /c:"%%c"|findstr /c:"%%d"|findstr /c:"%%e">>次数.txt
  13.         
  14.     endlocal
  15. )
  16. pause
复制代码
这个代码怎么统计查找处理后的文本行数并添加到%%a读取的那行数的后边
作者: DAIC    时间: 2014-3-25 22:57

以顶楼数据为例,希望得到的结果是什么?
作者: web    时间: 2014-3-25 23:41

回复 2# DAIC


01 02 03 04 05  18

05 06 07 08 09  11

05 06 07 08 10  7

06 07 08 09 25  2

06 07 08 09 26  2
作者: DAIC    时间: 2014-3-26 09:57

回复 3# web


    为什么是18呢?
作者: web    时间: 2014-3-26 18:48

回复 4# DAIC


    不好意思随便写的  结果是处理后的行数就行
作者: DAIC    时间: 2014-3-26 21:22

回复 5# web


    不要随便写。就用顶楼的数据写。
作者: web    时间: 2014-3-26 22:22

本帖最后由 web 于 2014-3-26 22:28 编辑

回复 6# DAIC


05 06 07 08 10  =5
01 02 03 04 05  =7
02 03 04 05 15  =1
06 07 08 10 15  =1
重新改了一下 b文件数字  =后边的是结果
根据循环处理5个数字得到的符合项也就是在a文件里都包含这5个数的行总共有多少、、
目地就是要%%a每处理一行查找得到的结果有几个/几行吧这个结果 加在后边
作者: terse    时间: 2014-3-27 00:43

本帖最后由 terse 于 2014-3-27 00:44 编辑
  1. @echo off
  2. (for /f "tokens=*" %%a in (b.txt) do (
  3.     for /f "tokens=1* delims=:" %%i in ('find /c "%%a" a.txt') do echo %%a =%%j
  4. ))>次数.txt
  5. pause
复制代码





欢迎光临 批处理之家 (http://bathome.net./) Powered by Discuz! 7.2