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

[文本处理] 批处理怎样依据己知行号,提取文档相应的段落内容?

[复制链接]
发表于 2018-3-5 08:36:51 | 显示全部楼层 |阅读模式
论坛各位大伽好:
     我的当前文件夹下有N个文本文件。
     现在已知的是:我现在有一个文件(list.txt),
     其文本中内容“左列”是某个文件夹下文件的“目录列表”,  
     其文本中内容“右列”是从左列的文件中的“提取行数”。(即提取第几行), 且每个文本文件的“提取的行数”是不一致的,不是统一的,是自己随机定的。是不确定实的。
     现在我的需求是,依据list.txt提供的文件列表(即文件标题+行号),将某个文件夹下N个文本文件的“对应行号”的段落內容提取出来,提取到list.txt文件中。
      list.txt的內容构成:文件标题、提取第几行、对应行号的段落内容。
      不知说清了没有,望提供些思路、建议等等,不胜感激!!     
      请论坛大伽们帮忙看看。

list.txt文本内容:

提取后的效果:
 楼主| 发表于 2018-8-1 08:57:07 | 显示全部楼层
请问,有谁见过这样的问题?
发表于 2018-8-1 10:31:36 | 显示全部楼层
list.txt压缩一下传上来我试试
 楼主| 发表于 2018-8-1 11:53:32 | 显示全部楼层
已上传,谢谢老师。
发表于 2018-8-1 15:56:44 | 显示全部楼层
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. (for /f "skip=1 tokens=1,2 delims=        " %%i in (list.txt) do (
  4.     set n=0
  5.     for /f "delims=" %%k in ('type "%%i"') do (
  6.         set /a n+=1
  7.         if "!n!" == "%%j" (echo;%%i        %%j        %%k)
  8.     )
  9. )) > Result.Log
  10. pause
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-21 00:12 , Processed in 0.032127 second(s), 17 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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