Robocopy: sintaxi i exemples
Introducció
Robocopy és una potent eina de línia de comandes, integrada als sistemes operatius Windows a partir de Windows Vista i Windows Server 2008, però que ja tenia una llarga història prèvia com a eina del kit de recursos de Windows.
Robocopy té tolerància als talls de xarxa per la còpia a sistemes remots, i permet copiar la major part de les característiques i atributs dels fitxers (atributs, informació del propietari, dates, permisos). Una de les seves opcions és també la còpia en “mirall”, que sincronitza una còpia exacta de l’origen al destí.
A continuació veurem uns llistats amb els modificadors que podem fer servir amb aquesta eina, i uns exemples d’aplicació habitual.
Opcions i modificadors de Robocopy
Opcions de còpia
| Opció | Descripció |
| /s | Copia els subdirectoris. Aquesta opció exclou els directoris buits. |
| /e | Copia els subdirectoris. Aquesta opció inclou directoris buits. |
| /lev:<N> | Copia només els N nivells superiors de l’arbre de directoris d’origen. |
| /z | Copia fitxers en mode Reinicia. |
| /b | Copia fitxers en mode de còpia de seguretat. |
| /zb | Utilitza el mode Reinicia. Si es denega l’accés, aquesta opció utilitza el mode de còpia de seguretat. |
| /efsraw | Copia tots els fitxers xifrats en mode EFS RAW. |
| /copy:<CopyFlags> | Especifica les propietats del fitxer que cal copiar. Els següents són els valors vàlids per a aquesta opció: D Dades A Atributs T Segells de temps S llista de control d’accés NTFS (ACL) O Informació del propietari U Informació d’auditoria El valor per defecte de CopyFlags és DAT (dades, atributs i marques de temps). |
| /dcopy:T | Copia les marques de temps del directori. |
| /sec | Copia fitxers amb informació de seguretat (equivalent a /copy: DAT). |
| /copyall | Copia tota la informació del fitxer (equivalent a /copy: DATSOU). |
| /nocopy | No copia informació del fitxer (útil amb /purge). |
| /secfix | Corregeix la seguretat de fitxer en tots els fitxers, fins i tot els que no hi hagi. |
| /timfix | Corregeix els temps de fitxer de tots els fitxers, fins i tot els que s’han omès. |
| /purge | Suprimeix els fitxers de destinació i els directoris que ja no existeixen a la font. |
| /mir | Es reflecteix un arbre de directoris (equivalent a /e més /purge). |
| /mov | Mou els fitxers i els suprimeix de l’origen després de copiar-los. |
| /move | Mou fitxers i directoris i els suprimeix de l’origen després de copiar-los. |
| /a+:[RASHCNET] | Afegeix els atributs especificats als fitxers copiats. |
| /a-:[RASHCNET] | Elimina els atributs especificats dels fitxers copiats. |
| /create | Crea un arbre de directoris i només fitxers de longitud zero. |
| /fat | Crea fitxers de destinació fent servir només noms de fitxers FAT. |
| /256 | Desactiva la compatibilitat amb rutes molt llargs (més de 256 caràcters). |
| /mon:<N> | Supervisa l’origen i torna a executar-se quan es detecten més de N canvis. |
| /mot:<M> | Monitoritza l’origen i torna a executar-se en M minuts si es detecten canvis. |
| /rh:hhmm-hhmm | Especifica els temps d’execució en què es poden iniciar còpies noves. |
| /pf | Comprova els temps d’execució per fitxer. |
| /ipg:n | Especifica la bretxa entre paquets per alliberar amplada de banda en línies lentes. |
| /sl | Copia l’enllaç simbòlic en lloc de l’objectiu. |
Opcions de selecció
| Opció | Descripció |
| /a | Copia només fitxers per als quals s’ha definit l’atribut Arxiu. |
| /m | Copia només fitxers per als quals s’ha definit l’atribut Arxiu i restableix aquest atribut. |
| /ia:[RASHCNETO] | Inclou només fitxers per als quals s’ha definit algun dels atributs especificats. |
| /xa:[RASHCNETO] | Exclou els fitxers per als quals s’ha definit qualsevol dels atributs especificats. |
| /xf <FileName>[ …] | Exclou els fitxers que coincideixen amb els noms o rutes especificats. Tingueu en compte que FileName pot incloure caràcters comodins (* i?). |
| /xd <Directory>[ …] | Exclou els directoris que coincideixen amb els noms i rutes especificats. |
| /xct | Exclou els fitxers canviats. |
| /xn | Exclou els fitxers més nous. |
| /xo | Exclou els fitxers antics. |
| /xx | Exclou fitxers i directoris addicionals. Els fitxers addicionals són fitxers que existeixen al directori de destinació. |
| /xl | Exclou els fitxers i directoris “solitaris”. |
| /is | Inclou els mateixos fitxers. |
| /it | Inclou fitxers “ajustats”. |
| /max:<N> | Especifica la mida màxima del fitxer (per excloure fitxers de més de N bytes). |
| /min:<N> | Especifica la mida mínima del fitxer (per excloure fitxers menors de N bytes). |
| /maxage:<N> | Especifica la data màxima dels fitxers (per excloure fitxers de més de N dies o data). |
| /minage:<N> | Especifica la data mínima dels fitxers (excloeu els fitxers més nous que N dies o data). |
| /maxlad:<N> | Especifica la data màxima de darrer accés (exclou els fitxers no utilitzats des de N ). |
| /minlad:<N> | Especifica la data mínima de darrer accés (exclou els fitxers utilitzats des de N ) Si N és inferior a 1900, N especifica el nombre de dies. En cas contrari, N especifica una data en el format AAAAAMMDD. |
| /xj | Exclou els punts de connexió, que normalment s’inclouen per defecte. |
| /fft | Suposa temps de fitxer FAT (precisió de dos segons). |
| /dst | Compensa les diferències horàries d’una hora i mitja (DST). |
| /xjd | Exclou els punts de connexió dels directoris. |
| /xjf | Exclou els punts de connexió dels fitxers. |
Opcions de Registre
| Opció | Descripció |
| /l | Especifica que els fitxers només es llistaran (i no es copiaran, suprimiran ni marcaran el temps). |
| /x | Informa de tots els fitxers addicionals, no només els seleccionats. |
| /v | Produeix una sortida detallada i mostra tots els fitxers exclosos. |
| /ts | Inclou segells de temps del fitxer origen a la sortida. |
| /fp | Inclou els noms de ruta completa dels fitxers a la sortida. |
| /bytes | Mostra la mida, en bytes. |
| /ns | Especifica que no s’han de registrar mides de fitxers. |
| /nc | Especifica que no s’han de registrar classes de fitxers. |
| /nfl | Especifica que no s’han de registrar els noms dels fitxers. |
| /ndl | Especifica que els noms de directori no s’han de registrar. |
| /np | Especifica que el progrés de l’operació de còpia (el nombre de fitxers o directoris copiats fins ara) no es mostrarà. |
| /eta | Mostra l’hora estimada d’arribada (ETA) dels fitxers copiats. |
| /log:<LogFile> | Escriu l’estat al fitxer de registre (sobreescriu el fitxer de registre existent). |
| /log+:<LogFile> | Escriu l’estat al fitxer de registre (afegeix la sortida al fitxer de registre existent). |
| /unicode | Mostra la sortida com a text Unicode. |
| /unilog:<LogFile> | Escriu la sortida al fitxer de registre com a text Unicode (sobreescriu el fitxer de registre existent). |
| /unilog+:<LogFile> | Escriu la sortida al fitxer de registre com a text Unicode (afegeix la sortida al fitxer de registre existent). |
| /tee | Escriu la sortida a la finestra de la consola, així com al fitxer de registre. |
| /njh | Especifica que no hi ha cap capçalera. |
| /njs | Especifica que no hi ha cap resum. |
Exemples
Còpia senzilla del directori C:\origen al directori C:\desti :
Robocopy C:\origen C:\desti
Còpia del directori C:\origen al directori C\desti, incloent els directoris buits:
Robocopy C:\origen C:\desti /e
Moure del directori C:\origen al directori C\desti dels fitxers de més de 30 dies:
Robocopy C:\origen C:\desti /move /minage:30
Còpia en “mirall” del directori C:\origen al directori C\desti, incloent subdirectoris i directoris buits:
Robocopy C:\origen C:\desti /mir
Còpia en “mirall” del directori C:\origen al directori C\desti, fent servir el temps de fitxer FAT en comptes de NTFS, assegurant-nos de que es pot reprendre la còpia si hi ha un tall, ignorant els fitxer ocults i reduint el temps entre fallades a 5 segons:
Robocopy C:\origen C:\desti /mir /fft /z /xa:h /w:5
Còpia en “mirall” del directori C:\origen al directori C\desti, impedint que el subdirectori C:\desti\subdirectori1 sigui esborrat si no està a l’origen
Robocopy C:\origen C:\desti /mir /xd C:\desti\subdirectori1
Còpia només dels permisos del directori C:\origen al directori C\desti, però no les dades, que ja s’han copiat prèviament
Robocopy C:\origen C:\desti /e /copy:s /is /it
Còpia en “mirall” del directori C:\origen al directori C\desti, amb el segell de temps dels directoris
Robocopy C:\origen C:\desti /mir /dcopy:t
Còpia dels fitxers de MS Word del directori C:\origen al directori C:\desti
Robocopy C:\origen C:\desti *.docx /e
Còpia del directori C:\origen al directori \\servidor\desti, incloent els directoris buits, fent servir el mode mutiprocés amb 20 fils i deixant un registre a la carpeta de destí:
Robocopy C:\origen \\servidor\desti /e /mt:20 /log:\\servidor\desti\registre.txt
Còpia del directori C:\origen al directori C\desti, incloent els directoris buits i copiant només els arxius més grans d’1 MB:
Robocopy C:\origen C:\desti /e /min:1048576

