Как скопировать файлы из дерева папок, удалив все папки с помощью Robocopy?

StackOverflow https://stackoverflow.com/questions/1502170

Вопрос

У меня есть следующая структура папок:

Складка
--Папка 1
--Папка 2
--Папка 3
...
--Папка 99

В папках с 1 по 99 хранятся файлы.

Все, что я хочу сделать, это скопировать ВСЕ ФАЙЛЫ в ОДНУ ПАПКУ, в основном сделать копию в FolderA и стереть папки 1-99, в которых хранятся все файлы.

Я бы хотел сделать это с помощью Robocopy из cmd.exe если возможно (Windows Server 2008)

Это было полезно?

Решение

Зачем использовать robocopy?Это хороший инструмент для конкретной задачи, но это не тот.

Вы можете просто использовать то, что cmd уже дает тебе:

for /r %f in (*) do @copy "%f" target

Это существенно "выровняет" вашу иерархию каталогов. for /r будет рекурсивно обходить дерево каталогов, ища имена файлов, соответствующие заданному шаблону.Вы также можете указать каталог для запуска:

for /r FolderA %f in (*) do @copy "%f" target

Внутри цикла это просто копия файла в указанную папку.

Другие советы

Robocopy - отличный инструмент...когда у тебя есть работа, с ней можно справиться.Почему бы не использовать xcopy?

Если у вас есть два диска, вы можете просто использовать xcopy:

XCOPY  C:\*.*  D:\NewFolder\   /S

Или используйте XXCOPY для одного диска:

XXCOPY C:\*.*  C:\NewFolder\   /S /CCY

XXКОПИЯ

Get-ChildItem -Path source -Recurse -File | Move-Item -Destination dest
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top