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