Board logo

标题: [文本处理] 求助,批处理如何删除文本指定字符串的前后几行呢? [打印本页]

作者: 秦风飞扬    时间: 2018-8-30 19:45     标题: 求助,批处理如何删除文本指定字符串的前后几行呢?

我有很多文本文档,想删除文本里所有字符串的前后几行?该如何操作呢?

例如,文本中有很多行有“Emergency brake”,我希望检测到这段之后,就删除这一行及这一行之前3行,之后2行。该如何操作呢?

还望不吝赐教,感激不尽
作者: /zhqsystem/zhq    时间: 2018-8-30 20:26

这ID太好了,心里不平衡,/暴击 /暴击

  1. for /f "delims=" %%i in ('more +0 1.txt')do (
  2. set/a n+=1
  3. set "#=%%i""
  4. set "_3="&&set "_2="
  5. if /i not "%%i"=="!#:Emergency brake=!" (
  6. set/a "_3=!n!-3"&&set/a "_2=!n!+2"
  7. for /l %%n in (!_3!,1,!_2!)do set "$%%n=%%n"
  8. )
  9. )
  10. for /f "delims=" %%i in ('more +0 1.txt')do (
  11. set/a nn+=1
  12. if not defined $!nn! (
  13. echo,%%i
  14. )
  15. )
复制代码





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