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

[文本处理] [已解决]批处理怎样批量替换html文件中两种颜色?

大家好,我在论坛找了很多个批处理文件都是针对txt文件替换的,我把代码中文件后缀txt直接修改为html替换后网面打开出问题,其中一个帖子如下
http://www.bathome.net/thread-39371-1-1.html

请各位帮忙解决一下,谢谢
需求场景:当前目录及子目录中有很多个(100+)html文件,文件中图标颜色需要更换指定色
亮红色替换为稍暗一点的红色('#ff0000'--->'#c10000')
亮绿色替换为稍暗一点的绿色('#00ff00'--->'#009d00')
1

评分人数

    • Batcher: 感谢给帖子标题标注[已解决]字样PB + 2

使用前先测试!
77七 发表于 2023-7-22 15:06



    非常谢谢大佬的帮助,解决了我的问题。

TOP

  1. @echo off
  2. set "old1=#ff0000"
  3. set "new1=#c10000"
  4. set "old2=#00ff00"
  5. set "new2=#009d00"
  6. for /f "delims=" %%i in ('dir /b /s /a-d *.html') do (
  7. (for /f "delims=" %%a in ('findstr /n .* "%%i"') do (
  8. set "str=%%a"
  9. setlocal enabledelayedexpansion
  10. set "str=!str:%old1%=%new1%!"
  11. set "str=!str:%old2%=%new2%!"
  12. echo=!str:*:=!
  13. endlocal
  14. ))>"xxx.html"
  15. move /y "xxx.html" "%%i"
  16. )
  17. pause
复制代码

  1. @echo off
  2. for /f "delims=" %%i in ('dir /b /s /a-d *.html') do (
  3. sed -i "s/#ff0000/#c10000/g;s/#00ff00/#009d00/g" "%%i"
  4. )
  5. pause
复制代码


使用前先测试!
1

评分人数

bat小白,请多指教!谢谢!

TOP

返回列表