2013-01-08 21:32:20 +0000 2013-01-08 21:32:20 +0000
50
50

Como copiar uma estrutura de directório sem copiar ficheiros?

Tenho uma pasta com muitas subpastas e ficheiros. Existe alguma forma de copiar a estrutura do directório de pastas e subpastas ** sem** copiar os ficheiros que contêm, usando cmd ou powerhell?

Respostas (9)

46
46
46
2013-01-17 08:58:16 +0000

Se quiser copiar também pastas vazias.

xcopy C:\Folders D:\Folders /t /e

29
29
29
2013-01-08 21:43:43 +0000

Sim. XCOPY

XCopy source {destination} /t

exemplo

xcopy C:\Folders D:\Folders /t

mais sobre xcopy pode ser encontrado aqui http://ss64.com/nt/xcopy.html

19
19
19
2015-02-04 14:41:42 +0000

Embora XCOPY ainda funcione, o Windows Vista e mais tarde inclui ROBOCOPY que tem mais características. A sintaxe geral para copiar uma árvore de pastas (incluindo pastas vazias) sem os ficheiros é:

robocopy "A:\Source folder" "B:\Destination folder" /e /xf *

3
3
3
2017-01-27 20:03:55 +0000

Método PowerShell que não requer a cópia de cada ficheiro e depois a sua eliminação:

Copy-Item -LiteralPath '.\source' -Destination 'C:\path\to\copy' -Recurse -Filter {PSIsContainer -eq $true}

Ou mais sucintamente:

copy .\source C:\path\to\copy -r -fi PSIsContainer

O único truque interessante aqui é a filtragem na propriedade PSIsContainer, o que é verdade para directórios mas não para ficheiros.

1
1
1
2013-06-19 16:15:02 +0000

Veja 47folders app, ferramenta gratuita e prática do Windows, faz exactamente o que precisa através de uma boa GUI.

AVISO: O antigo link http://47foldersapp.com/ ) agora (Nov 2017) leva à publicidade para vestuário.  A última boa cópia do Arquivo da Internet é aqui .  O software pode ainda estar disponível a partir de sites de download gratuito tais como este .

0
0
0
2016-11-03 09:37:02 +0000

Use PowerShell para o fazer usando. Faça uma cópia do Folder e depoisRemove-Item -Path "C:\test\*.*" -recurse.

0
0
0
2017-01-27 19:45:20 +0000

Apenas usei os Miroirs freeware, que muito simplesmente copiaram apenas pastas, não o conteúdo (embora isso seja uma opção). http://www.scanialabs.com/Products/Miroirs/Miroirs.aspx

0
0
0
2013-01-08 21:46:04 +0000

Há provavelmente uma solução melhor, mas eu veria estas:

  • Copiar tudo, depois esvaziar as pastas com um guião.

  • Fazer um guião que copie tudo, se não tiver extensão. A menos que tenha ficheiros sem uma extensão nas pastas, que não deve, deve funcionar, porque, bem. As pastas não têm extensões. Algo que se pareceria com isto em pseudo-código:

abrir directório($caminho); enquanto($arquivo=esqueçe_directório_contente) { if(vazio(get_file_extensão($arquivo)) copiar o ficheiro($file,$destino); }
}
encerramento da directoria;

-1
-1
-1
2013-01-09 05:35:44 +0000

tanto quanto sei, há software de terceiros que pode fornecer esta funcionalidade se quiser fazer com o comando de comando, então o comando de cópia está lá fora. digite help copy* em cmd que fornece detalhes sobre como copiar ficheiros através de cmd. depois de copiar vá para a pasta através de cmd e execute o comando

del\*.\*

que apaga ficheiros porque as pastas não têm carácter .