Я пытаюсь написать командный файл, который копирует папки из одной папки в другую, но только если они существуют в третьей папке.
Это звучит странно, я попробую еще раз.
У меня есть следующие 3 папки:
- Обновления
- Приложения
- Предыдущие версии
Перед обновлением структуры подпапки \Applications
с помощью структуры подпапки [новая версия] \Updates
мне нужно скопировать структуру подпапки \Applications
папку \Previous Versions
. После этого необходимо скопировать структуру подпапок Updates
папку /Applications
.
Я дошел до следующего:
Setlocal EnableDelayedExpansion
Set UpdtRoot=C:\Test\Updates
Set AppsRoot=C:\Test\Apps
Set PVerRoot=C:\Test\Previous Versions
FOR /d %%i IN ("!UpdtRoot!\*.*") DO xcopy "!AppsRoot!\%%~nxi" "!PVerRoot!\%%~nxi\" /e
Это не работает, хотя, он копирует все папки из AppsRoot в PVerRoot.
Мне нужно, чтобы скопировать подпапки из AppsRoot
в PVerRoot
, но только если они существуют в UpdtRoot
. Мне нужно только, чтобы скопировать папки и подпапки ТОЛЬКО так, чтобы никаких файлов вообще.