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

[文本处理] 求助,请大佬帮忙搞一个子目录文本内容批量删除的批处理。

先谢谢帮忙的大佬!

这边要用到一个正则,^.*aa.*$

例,桌面123目录下,有很多子文件夹,子文件夹下有若干的html文件,我需要替换所有的html文件内容文本(比如用上面的正则来搜索)为空。

也就是所有包括aa的文本行删除。

需保留源文件名。


我实在搞不懂,请大佬帮忙。

本帖最后由 qixiaobin0715 于 2022-9-16 13:07 编辑
  1. @echo off
  2. for /f "delims=" %%i in ('dir /s /b /a-d *.html') do (
  3.     findstr /v "^.*aa.*$" "%%i">"%%~dpinew_%%~nxi"
  4.     move /y "%%~dpinew_%%~nxi" "%%i"
  5. )
  6. pause
复制代码

TOP

回复 2# qixiaobin0715


    新消息,我把"aa"改成正则^.*aa.*$就可以正常替换了。但是没有保存到原来的文件,而是生成了新文件。请问这个需要如何处理呢?

TOP

回复 2# qixiaobin0715


    感谢帮助,但是并没有修改源文件,而是生成了新的文件,文件内容也不对。 我也没看懂是哪里出错了,麻烦您再出手帮一下。谢谢。

TOP

这个好像不需要正则:
  1. for /r %%i in (*.html) do findstr /v "aa" "%%i">"%%~dpinew_%%~nxi"
复制代码

TOP

返回列表