С помощью bat-ника найти и заменить текст в файле на текст из другого файла
Нужен батник, решающий такую задачу: есть два текстовых файла - файл_1 и файл_2, нужно текст каждой строки (всего их две) из файла_1 вписать вместо конкретного текста в файле_2, например, текст первой строки из файла_1 вписать вместо текст_1 в файле_2, текст второй строки из файла_1 - вместо текст_2 в файле_2.
|
Код:
@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
|
Время: 18:51.
© OSzone.net 2001-