Buenos días,
Necesito hacer un script en batch para que obtenga diferente información de ficheros XML y los liste en un CSV o similar (para usarlo en Excel).
El código que os dejo más abajo obtiene primero el listado completo de archivos (esto funciona bien). El problema a partir de ahí es que no soy capaz de obtener, por cada uno de los ficheros, la información que necestito.
La parte que falla es la de "Extracción de datos por cada archivo".
¿Quien puede ayudarme?
Necesito hacer un script en batch para que obtenga diferente información de ficheros XML y los liste en un CSV o similar (para usarlo en Excel).
El código que os dejo más abajo obtiene primero el listado completo de archivos (esto funciona bien). El problema a partir de ahí es que no soy capaz de obtener, por cada uno de los ficheros, la información que necestito.
Código [Seleccionar]
echo off
REM Lectura de archivos
setlocal disableDelayedExpansion
for /f "tokens=1* delims=:" %%A in ('dir /b /A:-D /O:N^|findstr /n "^"') do (
set "file.%%A=%%B"
set "file.count=%%A"
)
pause
REM listado de archivos
setlocal enableDelayedExpansion
for /l %%N in (1 1 %file.count%) do set count=%%N
for /l %%N in (1 1 %file.count%) do echo !file.%%N!;>>list.csv
for /l %%N in (1 1 %file.count%) do call :start
pause
REM Extracción de datos por cada archivo
set filenum=0
:start
set archivo=!file.%%N!
setlocal enableextensions disabledelayedexpansion
set "OrgnlMsgId="
for /f "tokens=2 delims=<>" %%a in (
'find /i "<OrgnlMsgId>" ^< %archivo%'
) do set "OrgnlMsgId=%%a"
echo %OrgnlMsgId%>>list.csv
setlocal enableDelayedExpansion
exit /b
:next
pause
exit
La parte que falla es la de "Extracción de datos por cada archivo".
¿Quien puede ayudarme?