У меня на рабочем столе есть одна папка Test
, а в этой папке у меня есть две папки, WorkingFolder\Bilder
и Station 1
. Таким образом, структура выглядит так:
Test\WorkingFolder\Bilder Test\Station 1
Внутри Test\
(главной папки) у меня есть пакетный файл. Мне нужно иметь возможность перемещать или копировать файлы .jpg
из Test\Station 1
в Test\WorkingFolder\Bilder
. Для этого я использовал XCopy
.
Проблема в том, что я НЕ МОГУ использовать имя папки copy-from в XCOPY
, потому что пакетный файл будет использоваться в нескольких папках с похожей структурой, но с разными именами путей. Поэтому я пытаюсь использовать %~dp0
вместо этого:
Мой код:
md WorkingFolder\Bilder
xcopy /s "%~dp0\*.jpg" WorkingFolder\Bilder\
Я пытаюсь написать следующее: скопировать все .jpg
содержимое подпапок %~dp0
, %~dp0
включая папку, в которой находится пакетный файл, и ее подпапку, в которой находятся изображения Station 1
, и поместить их в WorkingFolder\Bilder
.
Проблема в том, что файлы не копируются. Только когда я НАПРЯМУЮ ссылаюсь на Station 1
в Xcopy
, тогда файлы копируются. Мне нужно иметь возможность ссылаться на все подкаталоги в , %~dp0
а не как на подкаталоги в %~dp0\example
.
Пожалуйста, помогите мне!
решение1
я полагаю, чтоxcopy
сообщает о следующей ошибке:
Cannot perform a cyclic copy
Это происходит потому, что целевой каталог находится в дереве исходного каталога.
Вы можете попробовать использоватьrobocopy
командавместо этого и исключите целевой каталог:
robocopy "%~dp0." "%~dp0WorkingFolder\Builder" "*.jpg" /S /XD "%~dp0WorkingFolder"