Я сделал пакетный скрипт, который заменяет строки в указанном текстовом файле. В моем файле строка OutDir=bin
должна быть заменена как OutDir=Build
но выводится как bin=OutDir=Build=bin
. Как мне выйти из =
в OutDir=bin
чтобы строка не искажалась? Я пробовал OutDir^=
но использование моркови тоже не работает.
Вот мой текущий сценарий:
@echo off
setlocal enableextensions disabledelayedexpansion
set search=OutDir=bin
set replace=OutDir=Build
set textFile=%DOCUMENT%.txt
for /f "delims=" %%i in ('type "%textFile%" ^& break ^> "%textFile%" ') do (
set "line=%%i"
setlocal enabledelayedexpansion
>>"%textFile%" echo(!line:%search%=%replace%!
endlocal
)
Я попытался изменить переменные поиска и замены, чтобы компенсировать =
в строке, которую я заменяю, но ни одна из них не сработала:
set search= "OutDir=bin"
set replace= "OutDir=Build"
set search="OutDir=bin"
set replace="OutDir=Build"
set "search=OutDir=bin"
set "replace=OutDir=Build"
"set search=OutDir=bin"
"set replace=OutDir=Build"