Robocopy multi-threaded di sottocartella di primo livello

Robocopy è un meraviglioso strumento per sincronizzare directory, migrare server o semplicemente copiare dati su o tra sistemi Windows. La versione integrata di Robocopy su Windows 7 / Server 2008 R2 ha introdotto un'opzione di copia multi-thread; tuttavia, questo non è disponibile nelle edizioni precedenti di Windows. Continua a leggere per scoprire come eseguire operazioni Robocopy multi-thread con un file batch con qualsiasi versione di Windows.

Un modo per "multi-thread" di un'operazione di Robocopy è generare più istanze di robocopy su sottocartelle della cartella principale che stai copiando. Fare questo manualmente è noioso, soggetto a errori e non particolarmente efficiente.

Per utilizzare robocopy su qualsiasi versione supportata di Windows, devi prima scaricarlo e inserirlo in una cartella che si trova in "% PATH%". Cercare il kit di risorse di Windows 2003, scaricarlo e installarlo, quindi copiare robocopy.exe in C: \ WINDOWS. Si noti che questo non è necessario per le versioni di Windows che già lo includono, come Windows 7 e 2008 R2.

Quindi scarica il mio file batch robocopy multi-thread: Multi_Robocopy.txt

Cambia l'estensione del file da .txt a .cmd

Fare clic con il tasto destro e scegliere Modifica per aprirlo e modificare le variabili come descritto.

Vorrete sicuramente inserire una directory sorgente e destinazione appropriata per sostituire i miei segnaposto temporanei ("c: \ temp" e "c: \ testdir").

Per impostazione predefinita, questo script esegue il loop delle sottodirectory di SOURCE e avvia i thread simultanei di robocopy per ciascun processore / core sulla macchina. È possibile modificare il numero di thread come indicato da predefinito a qualsiasi numero desiderato (ad esempio THREADS = 4 per quattro operazioni simultanee di robocopy).

Questo script è particolarmente utile per sfruttare le prestazioni del processore e del mandrino durante la sincronizzazione di directory che contengono centinaia o migliaia di sottodirectory.