Windows 10 ha più strumenti speciali per controllare il comportamento e la gestione dei dati che utilizziamo al suo interno. Sebbene Windows PowerShell sia stato progettato per essere il futuro a livello di gestione della console per Windows, abbiamo ancora una serie di comandi utili che sono di grande aiuto per eseguire attività all'interno del sistema sia a livello di dati che a livello di configurazione. È il caso di Robocopy (Robust File Copy), un comando pensato per copiare file o cartelle in modo rapido ed efficiente sia in locale che in rete in ambienti Windows.
Cos'è Robocopy?Robocopy è uno strumento che permette la copia di file tramite comandi che permette una gestione più utile lavorando con le informazioni associate a questi file. Queste informazioni che puoi anche clonare corrispondono a elementi come permessi, attributi, proprietari o timestamp.
Vantaggi di RobocopyAlcuni dei vantaggi dell'utilizzo di Robocopy sono:
- In grado di resistere alle interruzioni nella copia dei file dovute a interruzioni di corrente o alla connessione di rete.
- Esegue tentativi automatici se non è possibile accedere a un determinato file.
- Ti consente di copiare grandi quantità di file, cosa che non è possibile con XCOPY.
- Ha un indicatore di progresso.
- Consente di eseguire la copia multi-thread.
- Supporta la copia selettiva degli oggetti.
- Copia tutte le informazioni di un elemento come proprietà, attributi, dati del proprietario e mantiene invariate anche le autorizzazioni del file.
Successivamente, vedremo l'uso che possiamo dare al comando Robocopy
1. Come avviare ed eseguire Robocopy in Windows 10
Per iniziare a utilizzare Robocopy possiamo accedere al prompt dei comandi o a Windows PowerShell come amministratori e nella console visualizzata eseguiamo la riga Robocopy, il risultato ottenuto sarà il seguente. Lì abbiamo la descrizione dello strumento e le molteplici modalità di utilizzo.
INGRANDIRE
2. Opzioni e usi di Robocopy in Windows 10
Ci sono una serie di opzioni di base quando si utilizza Robocopy, queste sono:
Robocopy origine destinazione / ECon questa opzione è possibile copiare ricorsivamente cartelle con sottodirectory anche se sono vuote. Durante l'esecuzione possiamo vedere un riepilogo completo dell'azione svolta indicando se ci sono stati errori, coincidenze o altro.
INGRANDIRE
Robocopy origine destinazione / SGrazie a questa opzione possiamo copiare ricorsivamente le cartelle con le sottodirectory ma non quelle vuote. In questo caso possiamo vedere che le cartelle che non hanno alcuna informazione vengono omesse.
INGRANDIRE
Robocopy origine destinazione / MIRIl parametro MIR o modalità mirror consente la copia ricorsiva degli elementi, ma al termine i file nella destinazione che non esistono più nell'origine della copia vengono eliminati.
INGRANDIRE
Destinazione origine Robocopy * .jpg.webp / EQuesta opzione ci consente di indicare file specifici da copiare.
INGRANDIRE
Parametri generali RobocopyI parametri generali di Robocopy sono:
- : consente di specificare il percorso della directory di origine.
- : indica il percorso della directory di destinazione.
- : consente di indicare il file oi file che verranno copiati. Possiamo usare caratteri jolly (* o?), Se vogliamo. Se il parametro file non è specificato, *. * viene utilizzato come valore predefinito.
- : Specificare le opzioni che possono essere utilizzate con il comando robocopy.
Opzioni di copia con Robocopy
- / s: consente di copiare le sottodirectory escludendo le directory vuote.
- / e: supporta la copia di sottodirectory incluse le directory vuote.
- / Lev:: copia solo i primi N livelli dell'albero delle directory di origine.
- / z: copia i file in modalità di riavvio.
- / b: copia i file in modalità backup.
- / ZB: questa opzione utilizza la modalità di riavvio. Se l'accesso è negato, questa opzione utilizza la modalità di backup.
- / EFSRAW: copia tutti i file crittografati in modalità EFS RAW.
- / copy :: Consente di specificare le proprietà del file da copiare. Di seguito sono riportati i valori validi per questa opzione:
- A per gli attributi
- T per timestamp
-S per l'elenco di controllo di accesso NTFS (ACL)
- O Informazioni sul proprietario
- U delle informazioni di audit
- Il valore predefinito per i segnalibri è DAT (dati, attributi e timestamp).
- / DCOPY: t: Questa opzione copia i timestamp delle directory.
- /sec: Con l'uso di questo parametro copieremo i file in modo sicuro (equivalente a /copy: DAT).
- / COPYALL: copia tutte le informazioni dal file.
- / NOCOPY: questa opzione non copia le informazioni dal file.
- / secfix: esegue correzioni di file di sicurezza per tutti i file, anche per i file ignorati.
- / TIMFIX: Fissa i tempi di tutti i file, anche quelli saltati.
- / Elimina: è responsabile della rimozione dei file e delle directory di destinazione che non esistono più nell'origine.
- / MIR: riflette un albero di directory.
- / Mov: sposta i file e li rimuove dall'origine dopo la copia.
- / Sposta: questa opzione sposta file e directory e li rimuove dall'origine dopo averli copiati.
- / a +: [RASHCNET]: aggiunge gli attributi specificati per i file copiati.
- / a-: [RASHCNET]: rimuove gli attributi specificati dai file copiati.
- / create: crea un albero di directory e solo file di lunghezza zero.
- / fat: crea solo file di destinazione utilizzando nomi di file FAT di lunghezza di 8,3 caratteri.
- / 256: disabilita il supporto per percorsi molto lunghi (più di 256 caratteri).
- mon:: questa opzione controlla l'origine e viene eseguita di nuovo quando vengono rilevate più di n modifiche.
- / MOT:: Ha il compito di monitorare l'origine e viene eseguito nuovamente dopo m minuti se vengono rilevate modifiche.
- / rh: hhmm-hhmm: specifica i tempi di esecuzione in cui devono iniziare le nuove copie.
- / PF: controlla i tempi di esecuzione in base a ciascun file.
- / IPG: n: indica la pausa tra i pacchetti per liberare larghezza di banda su reti lente o con poche risorse.
- / SL: copia il collegamento simbolico al posto della destinazione.
Opzioni di selezione dei file
- / a: copia solo i file per i quali è impostato l'attributo modificato.
- / m: questa opzione copia solo i file per i quali è stato impostato l'attributo modificato e ripristina l'attributo modificato.
- / IA: [RASHCNETO]: questa opzione include solo i file per i quali è impostato uno degli attributi specificati.
- / XA: [RASHCNETO]: l'utilizzo di questa opzione esclude i file per i quali è impostato uno degli attributi specificati.
- / xf […]: questa opzione esclude i file che corrispondono ai nomi o ai percorsi specificati.
- / XD […]: esclude le directory che corrispondono ai percorsi e ai nomi specificati.
- / xct: l'utilizzo di questa opzione esclude i file modificati.
- / Xn: vengono esclusi i file più recenti.
- / xo: i file più vecchi sono esclusi.
- / xx: le directory ei file extra sono esclusi.
- / XL: le directory ei file "solitari" sono esclusi.
- / Is: sono inclusi gli stessi file.
- / IT: I file "e" sono inclusi.
- / max:: specifica la dimensione massima del file (per escludere i file più grandi di n byte).
- / min:: consente di specificare la dimensione minima del file (per escludere i file inferiori a n byte).
- / MaxAge:: viene specificata l'età massima del file (per escludere i file più vecchi di n giorni o data).
- / MINAGE:: Consente di specificare l'età minima (esclusi i file più recenti di n giorni o data).
- /MAXLAD:: Specifica il numero massimo di date dell'ultimo accesso (esclude i file non utilizzati da N.).
- / MINLAD:: Viene specificata la data dell'ultimo accesso (esclude i file utilizzati da N.) minimo se n è inferiore a 1900, N indica il numero di giorni. In caso contrario, N specifica una data nel formato AAAAMMGG.
- / XJ: esclude i punti di unione, che di solito sono inclusi per impostazione predefinita.
- / FFT: Assume i tempi del file FAT (precisione di due secondi).
- / DST: compensa le differenze di un'ora rispetto all'ora legale.
- / xjd: esclude i punti di giunzione della directory.
- / XJF: esclude i punti di giunzione per i file.
Riprova opzioni
- / r:: specificare il numero di tentativi sulle copie non riuscite. Il valore predefinito di n è 1.000.000 (un milione di tentativi).
- / w :: Supporta la specifica del tempo di attesa tra i tentativi, in secondi. Il valore predefinito di n è 30 (timeout di 30 secondi).
- /reg: salva i valori specificati nelle opzioni /r e /w come impostazioni predefinite nel registro.
- /TBD: indica che il sistema attenderà la definizione dei nomi di condivisione (Riprova errore 67).
Opzioni di registrazione
- / l: specifica quali file verranno visualizzati solo (e non copiati, eliminati o contrassegnati con data e ora).
- / x: riporta tutti i file aggiuntivi, non solo quelli selezionati.
- / v: produce un output dettagliato e mostra tutti i file ignorati.
- / TS: include i timestamp del file di origine nell'output.
- /FP: include i nomi di percorso completi dei file nell'output.
- / byte: stampa le dimensioni, come byte o KB.
- / NS: specifica che le dimensioni dei file non verranno registrate.
- / NC: specifica che le classi di file non verranno registrate.
- / NFL: specifica che i nomi dei file non verranno registrati.
- / NDL: specifica che i nomi delle directory non verranno registrati.
- / NP: Specifica che l'avanzamento dell'operazione di copia (il numero di file o directory copiati fino a quel momento) non verrà visualizzato.
- / Eta: Visualizza l'orario di arrivo stimato (ETA) dei file copiati.
- / log:: scrive l'output di stato nel file di registro (sovrascrive il file di registro esistente).
- / log +:: scrive l'output di stato nel file di registro (aggiunge l'output al file di registro esistente).
- / Unicode: Visualizza l'output di stato come testo Unicode.
- / unilog:: Scrive lo stato di output per il file di registro come testo Unicode.
- / unilog +:: Scrive lo stato di output per il file di registro come testo Unicode.
- / tee: scrive l'output di stato nella finestra della console, oltre che nel file di registro.
- / NJH: indica che non esiste un'intestazione del lavoro.
- / njs: specifica che non esiste un riepilogo del lavoro.
In questo modo, Robocopy diventa una funzione integrale per le attività di copia e backup in ambienti Windows.
NotaSe vogliamo consultare più aiuto da Robocopy possiamo eseguire la seguente riga:
Robocopia /?
INGRANDIRE
3. Usi ed esempi del comando Robocopy in Windows 10
Alcune delle opzioni che possiamo trovare utilizzando il comando Robocopy sono le seguenti:
Copia file sempliceQuesto è il compito più elementare di Robocopy
Robocopy C: \ UserFolder C: \ BackupFolder
Copia tutto il contenutoQuesta opzione clona tutto il contenuto, comprese le cartelle vuote.
Robocopy C: \ SourceFolder C: \ DestinationFolder / E
Elenca fileLa seguente sintassi elencherà i file che metteremo con il limite di più di 32 MByte di dimensione. Con il parametro / l - filtreremo solo i file che corrispondono a quella condizione di dimensione.
Robocopy.exe c: \ SourceFolder d: \ targetfolder / min: 33553332 / l
Copia le modifiche nei fileCon questa sintassi tutte le modifiche verranno copiate nei file nella directory c:\data che contiene la data. Verrà creato un file batch:
@echo off day set =% data: ~ 0.2% set mese =% data: ~ 3.2% anno set =% data: ~ 6.4% Robocopy "c: \ data" "c: \ backup \ data \% day% -% mese% -% anno% \ "/ MASSIMO: 1
Copia l'albero delle directoryIn questo modo faremo una copia dell'albero delle directory inclusi i timestamp di origine:
Robocopy C: \ Folder1 C: \ Folder2 / MIR / dcopy: T
Directory mirrorQuesta opzione rifletterà le directory con sottocartelle incluse le directory vuote. Per questo utilizziamo l'opzione Robocopy/MIR che duplica un albero di directory comprendente tutte le sottocartelle e le directory vuote, cancellando anche gli elementi non più disponibili nella cartella di destinazione. Hai due possibilità di utilizzo:
ROBOCOPY \ sourceserver \ share \ destinationerver \ share / MIR ROBOCOPY unità di origine: \ DIR unità di destinazione: \ DIR / MIR
Grazie a questa utility, possiamo gestire in modo più completo il backup delle nostre informazioni senza perderne gli attributi.