Pergunta

Eu tenho a seguinte estrutura de pastas:

FolderA
--Folder1
--Folder2
--Folder3
...
--Folder99

Pastas 1 a 99 têm arquivos neles.

Tudo que eu quero fazer é copiar todos os arquivos em uma pasta, basicamente, fazer uma cópia FolderA, e acabar com pastas 1-99 manter todos os arquivos.

Eu gostaria de fazê-lo com Robocopy de cmd.exe se possível (Windows Server 2008)

Foi útil?

Solução

uso robocopy

Por quê? É uma boa ferramenta para uma tarefa específica, mas este não é o único.

Você pode simplesmente usar o que cmd já dá-lhe:

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

Este será, essencialmente, "achatar" a sua hierarquia de diretório. for /r andará uma árvore de diretórios de forma recursiva, procurando nomes de arquivos que correspondam ao padrão determinado. Você também pode especificar o diretório para começar em:

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

Dentro do loop é apenas uma simples cópia do arquivo em uma pasta especificada.

Outras dicas

Robocopy é uma grande ferramenta ... quando você tem um trabalho que ele pode manipular. Por que não usar xcopy?

Se você tiver duas unidades você pode apenas usar xcopy:

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

Ou uso XXCOPY para uma unidade:

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

XXCOPY

Get-ChildItem -Path source -Recurse -File | Move-Item -Destination dest
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top