Foro de elhacker.net

Programación => Scripting => Mensaje iniciado por: vikinoguera en 18 Marzo 2016, 16:18 pm



Título: [Batch] Reemplazar 2 cadenas de texto al mismo tiempo
Publicado por: vikinoguera en 18 Marzo 2016, 16:18 pm
Hola, necesito cambiar más de una cadena de texto en el mismo archivo, solo logré que me cambie Una. El código que tengo es el siguiente:

@echo off
setlocal enabledelayedexpansion
set INTEXTFILE=prueba22.txt
set OUTTEXTFILE=test_out.txt
set SEARCHTEXT=a0,a1,fecha_actual,periodo,Hospital,a2,a3,ID
set REPLACETEXT=CABECERA
set SEARCHTEXT2=a4,a5,a6,a7,a8,a9,a10,a20,a11,a12,a13,a14,a15,a16,a17,a18,a19
set REPLACETEXT2=PROFESIONAL

set OUTPUTLINE=

for /f "tokens=1,* delims=¶" %%A in ( '"type %INTEXTFILE%"') do (
SET string=%%A

SET modified=!string:%SEARCHTEXT%=%REPLACETEXT%!  

echo !modified! >> %OUTTEXTFILE%

)
del %INTEXTFILE%
rename %OUTTEXTFILE% %INTEXTFILE%


En ese script solo cambia la por la palabra CABECERA pero tambien necesito que la cadena guardada en la variable SEARCHTEXT 2 me la reemplace por PROFESIONAL.

Desde ya muchas gracias!