找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 28689|回复: 4

[文本处理] [已解决]批处理如何批量提取txt文本文档中记录的数量?

[复制链接]
发表于 2015-3-28 15:02:54 | 显示全部楼层 |阅读模式
如题,由原始数据几十甚至几百的txt文本,每个文本中都有很多行数字ID,现在想批处理实现目录下所有txt按照文本的名称提出内容ID的数量,并输出。原始资料特点总结如下:

(1)数字ID,以TXT文本存储;

(2)每一组数字为一个ID,均有数字组成

(3)可能存在空行(不知道怎么才能差出来,目视看不出来)

(4)文档名称由编号,编号之间没什么规律可循;

想一次提取每个文本文档中ID的数量,请教各位有没有好的办法,测试数据见附件,先行谢过了,thx a lot~

评分

参与人数 1PB +2 收起 理由
Batcher + 2 感谢给帖子标题标注[已解决]字样

查看全部评分

发表于 2015-3-28 15:25:49 | 显示全部楼层
回复 1# 小木瓜小土豆
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. (for /f "delims=" %%a in ('dir /a-d /b *.txt') do (
  4. set n=0
  5. for /f "delims=" %%b in ('type "%%a"') do set /a n+=1
  6. if "%%a" neq "统计.txt" echo,%%a --- !n!
  7. ))>"统计.txt"
复制代码

评分

参与人数 1技术 +1 收起 理由
小木瓜小土豆 + 1 乐于助人

查看全部评分

 楼主| 发表于 2015-3-28 16:21:01 | 显示全部楼层
回复 2# pcl_test

非常感谢,测试完成,输出的数据可以满足我想要的效果。大量工作数据处理,真实太实用了,非常感谢 ~
发表于 2015-3-28 22:14:55 | 显示全部楼层
回复 2# pcl_test


这样可以避免频繁执行 set /a n+=1
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. (for %%a in (*.txt) do (
  4.     set n=0
  5.     for /f "delims=" %%b in ('type "%%a" ^| findstr "[0-9]" ^| find /v /c ""') do (
  6.         set n=%%b
  7.     )
  8.     echo %%a --- !n!
  9. ))>"统计.log"
复制代码
 楼主| 发表于 2015-3-30 09:28:10 | 显示全部楼层
回复 5# DAIC
谢谢~回复已收到,非常感谢~
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-18 13:31 , Processed in 0.019156 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表