Основной синтаксис команды Robocopy:
robocopy
каталог-источника каталог-назначения [ шаблон ...] [ параметры ]
Если шаблон не указан , по умолчанию используется шаблон *.*
.
Квинент, вероятно, сказал что-то вроде
robocopy C:\folder1\folder2\folder3 D:\library /move /s /e
^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^ ^^^^^^^^^^^
source directory destination options
Эта команда указывает RoboCopy переместить все (шаблон по умолчанию в *.*
) файлы и каталоги, найденные в C:\folder1\folder2\folder3
, на D:\library
. Robocopy сделал это, как и ожидалось.
Чтобы переместить каталог folder3
из C:\folder1\folder2
в D:\library
, введите команду
robocopy C:\folder1\folder2\folder3 D:\library\folder3 /move /e
^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^ ^^^^^^^^
source directory destination options
Robocopy создаст целевой каталог D:\library\folder3
при необходимости. Обратите внимание, что опция /e
подразумевает /s
.
Поскольку возникает вопрос о том, как это сделать в пакетном файле, и при условии, что %1
не заканчивается обратной косой чертой, я предлагаю заменить robocopy /move /s /e "%1" "D:\library"
на
robocopy /move /s /e "%1" "D:\library\%~nx1"