[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

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

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

list.txt文本内容:

提取后的效果:

请问,有谁见过这样的问题?

TOP

list.txt压缩一下传上来我试试
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

已上传,谢谢老师。

TOP

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

TOP

返回列表