У мене є цей пакетний сценарій, який прогортає 5 змінних статичних наборів, що містять шлях до INI
файлу, який він потім читає і шукає певну рядок для заміни.
Моє питання полягає в тому, що після того, як зазначені заміни і записує файл назад на диск, це, здається, санітує всі екземпляри !
файлу INI, що, в свою чергу, порушує мою програму.
Я здогадуюсь, що !
мітки замінюються завдяки DelayedExpansion, але мені це потрібно для виконання моїх завдань тут. Я включаю копію функції з проблемою, я б дуже вдячний, якби хтось міг допомогти мені зрозуміти це.
Я цілими днями намагаюся знайти відповідь на це…
FOR %%A IN (1 2 3 4 5) DO (
SET CFG_A=!CFG_%%A!
IF "%DEBUG%"=="1" ECHO !CFG_A!
FOR /f "delims=" %%i IN ('type "!CFG_A!" ^& break ^> "!CFG_A!" ') DO (
SET "line=%%i"
SETLOCAL enabledelayedexpansion
SET "line=!line:%IP_V%=%IP%!"
>>"!CFG_A!" echo(!line!
ENDLOCAL
)
)