copy directory incluindo pasta 'base'

1

Eu preciso copiar o folderA para o folderB através da linha de comando:

c:\temp
        \folderA
        \folderB

deve se tornar

c:\temp
         \folderA   
         \folderB\folderA

Ou seja, exatamente o mesmo que se você copiasse a pasta A usando o Windows Explorer e colasse na pasta B.

Isso não funciona:

xcopy /e folder1 folder2\

à medida que você termina com o conteúdo da pasta A na pasta B e não na própria pasta.

Curiosamente, move faz exatamente o que eu quero, exceto que ele se move em vez de copiar:)

Como você copia uma pasta e inclui a própria pasta como a pasta base para a cópia? Eu não deveria ter que usar o mkdir para criar a pasta de destino. (mas isso faz o trabalho ser mal feito)

Por favor, não me direcione para this , pois isso não faça o acima.

Atualização:

Graças às respostas abaixo usando o robocopy, encontrei uma solução usando xcopy que não solicita:

xcopy /e /i folderA folderB\folderA

Use a opção /i para evitar que seja perguntado se o destino é um diretório ou um arquivo.

    
por wal 06.08.2012 / 05:49

3 respostas

3

tente

xcopy folder1 folder2\folder1 /e /i
    
por 06.08.2012 / 10:55
1

robocopy \folderA \folderB\folderA /s criará folderA no destino e executará uma cópia recursiva. Verifique quais outras opções você pode querer ou requerer. por exemplo. /e se você quiser incluir pastas vazias.

    
por 06.08.2012 / 10:46
0

Robocopy .

Se eu entendi os parâmetros corretamente, você gostaria de fazer Robocopy C:\temp\folderA C:\temp\folderB /COPYALL /E /DCOPY:T

(Copie a pasta A para o local B, preserve todos os atributos e ACLs, inclua todas as subpastas mesmo que vazias, preserve os registros de data e hora do diretório.)

    
por 06.08.2012 / 05:54