Board logo

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

作者: 屡败屡战    时间: 2018-3-5 08:36     标题: 批处理怎样依据己知行号,提取文档相应的段落内容?

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

list.txt文本内容:

提取后的效果:
作者: 屡败屡战    时间: 2018-8-1 08:57

请问,有谁见过这样的问题?
作者: Batcher    时间: 2018-8-1 10:31

list.txt压缩一下传上来我试试
作者: 屡败屡战    时间: 2018-8-1 11:53

已上传,谢谢老师。
作者: WHY    时间: 2018-8-1 15:56

  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
复制代码





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