2009-10-01 15 views
33

Ho la seguente struttura di cartelle:Come copiare i file dall'albero delle cartelle lasciando cadere tutte le cartelle con Robocopy?

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

cartelle da 1 a 99 avere i file in loro.

Tutto quello che voglio fare è copiare TUTTI I FILE in UNA CARTELLA, fondamentalmente fare una copia FolderA e cancellare le cartelle 1-99 mantenendo tutti i file.

mi piacerebbe farlo con Robocopy da cmd.exe, se possibile (Windows Server 2008)

+0

Questo non sembra un domanda di programmazione. – derobert

+0

voi ragazzi potete spostarlo su SU o SF, non voglio cancellarlo e sprecare una risposta utile –

+0

Superba domanda signore! – KyleFarris

risposta

51

Perché usare robocopy? È un buon strumento per un compito specifico, ma non è questo.

Si può semplicemente utilizzare quello cmd ti dà già:

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

Questo sarà essenzialmente "appiattire" la gerarchia di directory. for /r eseguirà un albero di directory in modo ricorsivo, cercando i nomi di file corrispondenti al modello specificato. Puoi anche specificare la directory da cui iniziare:

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

All'interno del ciclo è solo una semplice copia del file in una cartella specificata.

+0

Ci sono 2 soluzioni [qui] (http://mlichtenberg.wordpress.com/2011/01/25/command-line-fun-how-to-flatten-a-folder-hierarchy/) se hai file che non hanno nomi univoci. –

+0

Quale opzione può essere utilizzata quando ci sono duplicati con lo stesso nome? – MostlyHarmless

+1

@Martin: vedi 'help copy'. È '/ y'. – Joey

3

Robocopy è un ottimo strumento ... quando si ha un lavoro che può gestire. Perché non usare xcopy?

Se si dispone di due dischi si può semplicemente utilizzare xcopy:

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

Oppure utilizzare XXCOPY per un'unità:

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

XXCOPY

+0

È un piccolo download http://www.xxcopy.com/download/xxfw2982.zip – NitroxDM

+0

attributo utente/SGF da copiare in una cartella –

0
Get-ChildItem -Path source -Recurse -File | Move-Item -Destination dest 
Problemi correlati