Comando robocopy della riga di comando di MS-DOS e Windows

Robocopy è un robusto comando di copia file per la riga di comando di Windows. Consente agli utenti di copiare file, directory e persino unità da una posizione all’altra.
Disponibilità
Robocopy è un comando esterno disponibile per i seguenti sistemi operativi Microsoft come robocopy.exe.
-
Windows NT (nel kit di risorse)
-
Windows 2000 (nel kit di risorse)
- Windows Server 2008
- Windows Vista
- Windows 7
- Windows 8
- Windows 10
Sintassi Robocopy
ROBOCOPY source destination [file [file]...] [options]
| fonte | Directory di origine (unità:percorso o \servercondivisionepercorso). |
| destinazione | Directory di destinazione (unità:percorso o \servercondivisionepercorso). |
| file | File da copiare (nomi/caratteri jolly: il valore predefinito è “*.*”). |
Opzioni di copia
| /S | Copia le sottodirectory, ma non quelle vuote. |
| /E | Copia le sottodirectory, comprese quelle vuote. |
| /LEV:n | Copia solo i primi n livelli dell’albero della directory di origine. |
| /Z | Copia i file in modalità riavviabile. |
| /B | Copia i file in modalità backup. |
| /ZB | Usa la modalità riavviabile. Se l’accesso è negato, utilizzare la modalità di backup. |
| /EFSRAW | Copia tutti i file crittografati in modalità EFS RAW. |
| /COPY: flag copy[s] | Cosa COPIA per i file (l’impostazione predefinita è /COPY:DAT). (copyflags: D=Dati, A=Attributi, T=Timestamp). (S=Sicurezza=ACL NTFS, O=Informazioni sul proprietario, U=Informazioni sulla modifica). |
| /DCOPY:T | COPIA i timestamp della directory. |
| /SEC | Copia i file con sicurezza (equivalente a /COPY:DATS). |
| /COPYALL | Copia tutte le informazioni sul file (equivalente a /COPY:DATSOU). |
| /NOCOPY | Copia nessuna informazione sul file (utile con /PURGE). |
| /SECFIX | Correggi la sicurezza dei file su tutti i file, anche sui file ignorati. |
| /TIMFIX | Correggi i tempi dei file su tutti i file, anche quelli saltati. |
| /EPURAZIONE | Elimina i file/dir di destinazione che non esistono più nell’origine. |
| /MIR |
Rispecchia un albero di directory (equivalente a /E più /PURGE). |
| /MOV | Sposta i file (elimina dall’origine dopo la copia). |
| /SPOSTARE | Sposta file e directory (elimina dall’origine dopo la copia). |
| /A+:[RASHCNET] | Aggiungi gli attributi dati ai file copiati. |
| /UN-:[RASHCNET] | Rimuove gli attributi dati dai file copiati. |
| /CREARE | Crea solo alberi di directory e file di lunghezza zero. |
| /GRASSO | Crea file di destinazione utilizzando solo nomi di file FAT 8.3. |
| /256 | Disattiva il supporto per percorsi molto lunghi (> 256 caratteri). |
| /MON:n | Sorgente di monitoraggio; eseguire di nuovo quando vengono visualizzati più di n cambiamenti. |
| /MOT:m | Sorgente di monitoraggio; rieseguire tra m minuti, se modificato. |
| /RH:hhmm-hhmm | Ore di esecuzione: orari in cui è possibile avviare nuove copie. |
| /PF | Controlla le ore di esecuzione per file (non per pass). |
| /IPG:n | Inter-packet gap (ms), per liberare banda su linee lente. |
| /SL | Copia i collegamenti simbolici rispetto al target. |
| /MT[:n] | Esegui copie multi-thread con n thread (predefinito 8). n deve essere almeno 1 e non maggiore di 128. Questa opzione non è compatibile con le opzioni /IPG e /EFSRAW. Reindirizza l’output utilizzando l’opzione /LOG per prestazioni migliori. |
Opzioni di selezione dei file
| /UN | Copia solo i file con l’attributo di archivio impostato. |
| /M | Copia solo i file con l’attributo di archivio e ripristinalo. |
| /IA:[RASHCNETO] | Includere solo i file con uno degli attributi specificati impostati. |
| /XA:[RASHCNETO] | Escludere i file con uno degli attributi specificati impostati. |
| /File XF [file]… | Escludi i file che corrispondono a nomi/percorsi/caratteri jolly dati. |
| /XD dir [dirs]… | Escludere le directory che corrispondono a nomi/percorsi dati. |
| /XC | Escludi i file modificati. |
| /XN | Escludi i file più recenti. |
| /XO | Escludi i file più vecchi. |
| /XX | Escludi file e directory extra. |
| /XL | Escludi file e directory solitari. |
| /È | Includi gli stessi file. |
| /ESSO | Includi file ottimizzati. |
| /MAX:n | Dimensione massima del file – esclude i file più grandi di n byte. |
| /MIN:n | Dimensione minima del file: esclude i file più piccoli di n byte. |
| /MAXAGE:n | Età massima file – esclude i file più vecchi di n giorni/data. |
| /MINAGE:n | Età minima del file – esclude i file più recenti di n giorni/data. |
| /MAXLAD:n | Data massima ultimo accesso – escludi file non utilizzati dal n. |
| /MINLAD:n | Data minima ultimo accesso – escludi file utilizzati dal n. (Se n < 1900 allora n = n giorni, altrimenti n = AAAAMMGG data). |
| /XJ | Escludere i punti di giunzione. (normalmente incluso per impostazione predefinita). |
| /FFT | Assumere i tempi del file FAT (granularità di 2 secondi). |
| /DST | Compensa le differenze di fuso orario dell’ora legale di un’ora. |
| /XJD | Escludere i punti di giunzione per le directory. |
| /XJF | Escludere i punti di giunzione per i file. |
Riprova Opzioni
| /R:n | Numero di tentativi su copie non riuscite: valore predefinito 1 milione. |
| /W:n | Tempo di attesa tra i tentativi: l’impostazione predefinita è 30 secondi. |
| /REG | Salva /R:n e /W:n nel registro come impostazioni predefinite. |
| /TBD | Attendi la definizione dei nomi di condivisione (riprova errore 67). |
Opzioni di registrazione
| /L | Solo elenco: non copiare, contrassegnare con data e ora o eliminare alcun file. |
| /X | Segnala tutti i file extra, non solo quelli selezionati. |
| /V | Produce un output dettagliato, mostrando i file saltati. |
| /TS | Includere i timestamp del file di origine nell’output. |
| /FP | Includere il percorso completo dei file nell’output. |
| /BYTE | Stampa le dimensioni come byte. |
| /NS | Nessuna dimensione: non registrare le dimensioni dei file. |
| /NC | Nessuna classe: non registrare le classi di file. |
| /NFL | Nessun elenco di file: non registrare i nomi dei file. |
| /NDL | Nessuna directory Elenco: non registra i nomi delle directory. |
| /NP | Nessun progresso: non visualizzare la percentuale copiata. |
| /ETA | Mostra il tempo stimato di arrivo dei file copiati. |
| /LOG:file | Stato dell’uscita nel file LOG (sovrascrivi il registro esistente). |
| /LOG+:file | Stato dell’output nel file LOG (aggiungi al registro esistente). |
| /UNILOG:file | Stato dell’output nel file LOG come UNICODE (sovrascrivi il registro esistente). |
| /UNILOG+:file | Stato dell’output nel file LOG come UNICODE (aggiungi al registro esistente). |
| /TEE | Output nella finestra della console e nel file di registro. |
| /NJH | Nessuna intestazione del lavoro. |
| /NJS | Nessun riepilogo del lavoro. |
| /UNICODE | Stato dell’uscita come UNICODE. |
Opzioni di lavoro
| /LAVORO:nomelavoro | Prendere i parametri dal file di lavoro denominato. |
| /SAVE:nomelavoro | Salva i parametri nel file di lavoro denominato. |
| /USCIRE | Esci dopo aver elaborato la riga di comando (per visualizzare i parametri). |
| /NOSD | Non è stata specificata alcuna directory di origine. |
| /NODD | Non è stata specificata alcuna directory di destinazione. |
| /SE | Includi i seguenti file. |
Esempi di Robocopy
robocopy c:hope c:hope2 *.txt
In questo primo esempio, qualsiasi file .txt verrebbe copiato dalla directory Hope nella directory Hope2. Ogni volta che si desidera copiare uno o più file e non una directory completa, il file deve essere specificato dopo la directory di destinazione.
robocopy c:hope c:hope2
Nell’esempio sopra, il comando robocopy copierà tutti i file (non le directory) nella directory Hope nella directory Hope2.
robocopy c:hope c:hope2 /e
Nell’esempio sopra, tutti i file e le cartelle (compresi quelli vuoti) vengono copiati dalla directory Hope alla directory Hope2.
robocopy c:hope c:hope2 /MIR
Questo esempio rispecchia ciò che c’è in c:hope in c:hope2 ed elimina tutti i file nella directory Hope2 che non esistono nella directory Hope. Utilizzare l’opzione /mir con cautela poiché sta eliminando i file che non corrispondono nella directory di destinazione.
robocopy \computerhope C:hope2
Successivamente, questo esempio copierà qualsiasi file nella directory Hope sul computer di rete denominato computer nella directory Hope2 del computer corrente.
