Stworzyłem skrypt wsadowy, który zastępuje ciągi znaków w określonym pliku tekstowym. W moim pliku ciąg OutDir=binpowinien zostać zastąpiony jako, OutDir=Buildale otrzymuje dane wyjściowe jako bin=OutDir=Build=bin. Jak mogę uciec =in OutDir=bintak, że ciąg nie staje się nieczytelny? Próbowałem, OutDir^=ale użycie marchewki też nie działa.
Oto mój obecny skrypt:
@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
)
Próbowałem zmienić znajdź i zamień zmienne, aby skompensować =ciąg, który zastępuję, ale żadna nie działała:
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"