Board logo

标题: [文本处理] 批处理for命令delims字符分割问题 [打印本页]

作者: wangchuanxiaolu    时间: 2020-10-20 15:23     标题: 批处理for命令delims字符分割问题

有个脚本处理文本内容,我以]分割,但是文本内容会出现]]的情况,我想保留一个],该怎么修改
  1. @echo off
  2. chcp 65001 >nul
  3. setlocal enabledelayedexpansion
  4. set DB_NAME=test_%random%
  5. for /f "skip=2 delims=] tokens=1*" %%a in ('find "" /v /n dev.py') do (
  6.   set line=%%b
  7.   if "!line!" == "" (
  8.     echo.>>dev.py.bak
  9.   ) else (
  10.     set line=!line:test_db=%DB_NAME%!
  11.     echo !line!>>dev.py.bak
  12.   )
  13. )
复制代码

作者: qixiaobin0715    时间: 2020-10-20 16:48

本帖最后由 qixiaobin0715 于 2020-10-23 13:32 编辑

刚刚修改
  1. @echo off
  2. chcp 65001 >nul
  3. set DB_NAME=test_%random%
  4. (for /f "skip=2 delims=" %%a in ('findstr /n .* dev.py') do (
  5.     set "var=%%a"
  6.     setlocal enabledelayedexpansion
  7.     set line=!var:*]=!
  8.     if "!line!" == "" (
  9.         echo.
  10.     ) else (
  11.         set line=!line:*:=!
  12.         if "!line!" == "" (
  13.             echo.
  14.         ) else (
  15.             set line=!line:test_db=%DB_NAME%!
  16.             echo !line!
  17.         )
  18.     )
  19.     endlocal
  20. ))>dev.py.bak
  21. pause
复制代码





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