Renombrar archivos y eliminar código de los mismos

Requiero renombrar unos xml y adicionalmente borrar unas líneas de código, estas líneas van de la 25 a la 37, son 100 o más archivos, y al nombre es adicionar _UPDATE.xml

Respuesta
1

Prueba con esto:

@echo off
Setlocal EnableDelayedExpansion
set carpeta=d:\carpeta prueba
pushd %carpeta%
for /f "tokens=* delims=" %%i in ('dir /b *.xml') do call :tratarch "%%i"
popd
goto :eof
:tratarch
set nomarch=%~n1
if "%nomarch:~-7%"=="_UPDATE" goto :eof
del /q tmp.txt>nul 2>&1
set /a lin=1
for /f "usebackq delims=" %%x in ("%~1") do (
   if !lin! lss 25 (echo %%x>>tmp.txt
      ) else if !lin! gtr 37 echo %%x>>tmp.txt
   set /a lin+=1
   )
copy /y tmp.txt "%~n1_UPDATE%~x1"
goto :eof

En la variable CARPETA debes poner el path de la carpeta donde están lo XML que quieras que se traten. Tal como está planteado debe ignorar las líneas de la 25 a la 37 ambas incluidas. Las dos primeras líneas de la rutina  TRATARCH son para evitar que se vuelvan a tratar los archivos modificados.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas