Назад | Перейти на главную страницу

Копирование дерева каталогов в Windows

Мне нужно скопировать полное дерево каталогов (также известное как рекурсивная копия) с файлами bat в Windows. В системах * nix я использую аргумент -R в команде копирования, например:

cp -R fromDir toDir

и это сделало свою работу. Я не нашел ничего подобного в окнах "man-страниц" копировать команда.

Спасибо!

Копирование не обрабатывает рекурсию. Вместо этого используйте robocopy. В Windows 2008 он уже есть и находится в Пути. В Windows 2000 и 2003 он есть в комплекте ресурсов. Вам понадобятся флаги / S / Z / ETA.

/ S рекурсия / Z перезапускаемый узел / ETA скажите мне, сколько времени займет текущий файл (необязательно)

Параметр / s в XCOPY обрабатывает подкаталоги (кроме пустых).

Я бы использовал Robocopy / E / COPYALL / MIR / ETA /LOG:FILE.log / TEE "SOURCE DIR" "DESTINATION DIR"

Пример: robocopy.exe / E / COPYALL / MIR / ETA /LOG:C:\copy.log / TEE "C: \ SourceDirectory \\" "C: \ DestinationDirectory \\"

/ E: копировать подкаталоги, в том числе пустые.
/ COPYALL: копирует все флаги безопасности и временные метки в файлы.
/ МИР: Сделаем точную копию источника. Поэтому, если вы скопируете его один раз, а затем скопируете еще раз, он будет обрабатывать удаление вместе с новыми файлами.
/ ETA: показать примерное время прибытия скопированных файлов.
/ Log: создает файл журнала.
/ TEE: вывод в окно консоли, а также в файл журнала.

Есть много разных вариантов robocopy, если вы сделаете /? для более продвинутого использования.

Вы также можете использовать версию с графическим интерфейсом: http://technet.microsoft.com/en-us/magazine/2006.11.utilityspotlight.aspx

Попробуйте использовать xcopy вместо копии.

Я предлагаю xcopy / mir [с] [по] если вы хотите сохранить разрешения.

cpx.exe из проект utx поддерживает рекурсивное копирование и рекурсивные подстановочные знаки для простого и эффективного выбора файлов для копирования.