Вы просто рекурсивно ищите любой XML-файл в определенной структуре каталогов.
@echo off
for /R "C:\SourceFolder" %%i in (*.xml) do copy "%%i" "C:\DestinationFolder"
См. for /?
из cmd.exe
для получения дополнительной справки по команде
Редактировать
Что касается вашего комментария, хотя он все еще неясен, кажется, что вы часто создаете новый каталог дат, поэтому мы можем отсортировать каталоги по дате (последний последний), а затем просто скопировать xml из самого последнего:
@echo off
pushd "C\Program Files\Tests"
for /f %%i in ('dir /b /ad /od') do set "mypath=%%~dpfi"
copy "%mypath%\Current\Logsxml\*.xml" "C:\DestinationFolder"
ПРИМЕЧАНИЕ это предполагает, что у вас есть каталог в соответствии с вашим комментарием, logsxml
, если он просто называется logs
, содержащий xml
файлов, тогда просто измените последнюю строку на:
copy "%mypath%\Current\Logs\*.xml" "C:\DestinationFolder"
Чтобы скопировать все xml-файлы из каталогов даты, выполните:
@echo off
pushd "C\Program Files\Tests"
for /f %%i in ('dir /b /ad /od') do (
copy /Y "%%i\Current\Logsxml\*.xml" "C:\DestinationFolder"
)