windows - 如何通过批量启用延迟扩展来逃避“

标签 windows batch-file

编写一个简单的脚本来查找和替换批处理中的字符。我的脚本包含“我想用一些文本替换它的字符”。请告诉我哪个转义字符会有所帮助。试过“”和^”不行 脚本 : `

    @echo off &setlocal 
    set search2="""
    set "replace2=""
    set "textfile=D:\Users\manajosh\Desktop\try-Copy.xml"
    set "newfile=D:\Users\manajosh\Desktop\Output.txt"
    (for /f "delims=" %%i in (%textfile%) do (
        set "line=%%i"
        setlocal enabledelayedexpansion
            set "line=!line:%search2%=%replace2%!"
            echo(!line!
        endlocal
    ))>"%newfile%"

pause 6

`

最佳答案

试试这个技巧:

@echo off
set "search2=""
rem  set search2="""
set "replace2=""
set "line="quoted""
setlocal enableDelayedExpansion
 for /f "usebackq tokens=1,2 delims=§" %%a in ('"!search2!"§"!replace2!"') do echo "!line:%%~a=%%~b!"
endlocal

问题是您需要延迟扩展行以及 search2 和 replace2 - 这可以通过包装 for 循环来实现。

关于windows - 如何通过批量启用延迟扩展来逃避“,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31066277/

相关文章:

batch-file - 延迟扩展在延迟扩展内不起作用

windows - 在 Dos 批处理文件中运行顽固的可执行文件

windows - NSIS 无法运行驱动程序安装程序批处理文件

batch-file - 如何使用 wmic 查找进程 pid 并使用 taskkill 杀死它

batch-file - PrintUI.dll错误处理

windows - 使用 VS 编译器和链接器构建 Windows 驱动程序

python - 并行化 svn up 导致客户端卡住

PHP - PHP 警告 : PHP Startup: in Unknown on line 0

c# - 如何在 RDLC 字段中显示本地系统日期格式

windows - ffmpeg 在播放全屏的电视上保持宽高比