bat提取指定字符所在行以及所在行前1行与后2行的内容输出到另外一个文件

原文件:12132张djksajddjksajdkldjsklajds李fdlsafjdsjfldksjafdfjdlksajd张jfdsjafldjfdlksjad我想... 原文件:
12132

djksajd
djksajdkl
djsklajds

fdlsafjds
jfldksjafd
fjdlksajd

jfdsjafld
jfdlksjad
我想把所有的张所在行的内容,以及所在行前一行后两行的内容提取出来
目标文件:
12132

djksajd
djksajdkl
fjdlksajd

jfdsjafld
jfdlksjad
展开
 我来答
ijyfe
推荐于2016-05-28 · TA获得超过2998个赞
知道小有建树答主
回答量:1243
采纳率:25%
帮助的人:465万
展开全部
@echo off&setlocal enabledelayedexpansion
for /f "delims=:" %%a in ('findstr /n "张" a.txt') do (
set /a m=0,var=%%a-1,var1=%%a+2
for /f "delims=" %%i in (a.txt) do (
   set /a m+=1
   if !m! geq !var! (
      if !m! leq !var1! echo %%i>>2.txt
   )
))
pause

请把内容保存在a.txt中,生成的新的文件在2.txt中。

请将此批处理文件和a.txt放在同一个目录下运行。

有疑问,请追问。

如果对你有帮助,请采纳!谢谢!

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式