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

[文本处理] [已解决]批处理如何删除首次同时出现多个字符串的行?

本帖最后由 meiszp 于 2019-1-21 21:40 编辑

文本里有多行同时包含“BENDE”和“LASTF ”字符串,希望删除首次同时出现这两个字符串的行。


贴个代码
  1. @echo off
  2. set "filename=test.txt"
  3. cd.>tmp$
  4. for /f "tokens=1* delims=:" %%a in ('findstr /n .* %filename%') do (
  5. echo "%%b"|findstr "LASTF"|findstr "BENDE">nul&& (set n=%%a&goto :next)
  6. echo.%%b >>tmp$
  7. )
  8. :next
  9. more +%n% %filename% >>tmp$
  10. move tmp$ %filename%
复制代码

返回列表