Код:
@Echo Off
SetLocal EnableDelayedExpansion
:: Обрабатываемый файл
Set file=e:\Temp\list 1.txt
:: Файл с заменами (содержит только две строки по условию задачи)
Set filechang=e:\Temp\list 2.txt
:: Два образца строк, подлежащих замене
Set srt1=First text
Set srt2=Second text
Set cnt =0
For /F "usebackq tokens=* delims=" %%i In ("%filechang%") Do (
Set /A cnt +=1
Set chang!cnt!=%%i
)
For /F "usebackq tokens=* delims=" %%i In ("%file%") Do (
If "%%i"=="%srt1%" (
Echo %chang1%>>test.txt
) Else (
If "%%i"=="%srt2%" (
Echo %chang2%>>test.txt
) Else (
Echo %%i>>test.txt
)
)
)
Copy test.txt "%file%" /Y>Nul
Del test.txt>Nul