Жесткий, schmuff. Просто нужно перерабатывать старые партии.
Действительно зависит от вашего формата данных - но вы не предоставили образец.
Here's one I solved earlier
Выборочные данные в q23655846.txt
<root>
<cities>
<cityName>paris</cityName>
<cityName>london</cityName>
<cityName>...</cityName>
...
</cities>
<countries>
<countryName>india</countryName>
<countryName>japon</countryName>
<countryName>...</countryName>
...
</countries>
<continents>
<continentName>asia</continentName>
<continentName>america</continentName>
<continentName>South america</continentName>
<continentName>...</continentName>
...
</continents>
</root>
Модифицированный код, чтобы удовлетворить «каждый в своем требовании File`:
@ECHO OFF
SETLOCAL
SET "outloc=U:\destdir\file_"
set "tag=continentName"
set "f_xml=q23655846.txt"
set "tag2=/%tag%"
setlocal enabledelayedexpansion enableextensions
set fcnt=0
for /f "tokens=2-4delims=<>" %%a in (%f_xml%) do (
IF "%%a"=="%tag%" IF "%%c"=="%tag2%" SET /a fcnt+=1&>>"%outloc%!fcnt!" ECHO(%%b
)
GOTO :eof
Установка outloc
Я оставляю вы - местоположение, которое я разместил, удобно для моей системы. Тоже тег и имя файла xml.
Незначительные изменения потребуются, если вы хотите вывести блок, или если ваше абсолютное имя исходного файла содержит символы разделителя, такие как пробелы.
Это было бы жестким словом в пакетных файлах. –