NorfiPC »
Comandos Windows »
Como usar Robocopy
Como usar el comando Robocopy en Windows, ejemplos prácticos y códigos
Tweet
Como utilizar el comando Robocopy en Windows, para copiar de manera rápida, eficaz y eficiente archivos, carpetas, datos, informaciones, discos CDROM, DVD en la computadora local, en la red y en internet. Como crear backups y respaldos de datos. Ejemplos prácticos, códigos para probar y efectuar copias. Sintaxis, parámetros y opciones que permite el comando.
Robocopy es uno de los comandos disponibles más poderosos, útiles y empleados en la línea de comandos de Windows. Permite copiar carpetas y directorios ya sea en una PC local o en la red (no copia archivos aislados). Es una especie de comando de tercera generación que toma las cualidades de los conocidos COPY y XCOPY y las perfecciona al máximo.

Imagen que muestra un proceso de copia de archivos en Windows usando ROBOCOPY, puede observarse la velocidad a la que se realizó el proceso.
Ventajas del uso de Robocopy en Windows
Tolera las interrupciones en la copia de archivos ya sea por cortes de energía o en la conexión.
Realiza reintentos automáticos si no se puede acceder a un archivo.
Permite copiar grandes cantidades de archivos, imposible con XCOPY.
Muestra indicador de progreso.
Permite copiado multihilo.
Copia correctamente toda la información como propiedades, atributos, datos del propietario, fechas, etc además mantiene inalterables los permisos del archivo.
Realiza reintentos automáticos si no se puede acceder a un archivo.
Permite copiar grandes cantidades de archivos, imposible con XCOPY.
Muestra indicador de progreso.
Permite copiado multihilo.
Copia correctamente toda la información como propiedades, atributos, datos del propietario, fechas, etc además mantiene inalterables los permisos del archivo.
Como usar Robocopy en Windows XP
Robocopy solo está disponible en los sistemas posteriores a Windows Vista, pero si usas Windows XP puedes descargar la aplicación en el link más abajo y agregarlo a tu sistema. Para eso descomprime el archivo que descargues y la aplicación robocopy.exe en su interior muévala a la carpeta C:\Windows. Desde ese momento podrás ejecutar robocopy en la consola de cmd.
Formas prácticas y sencillas de usar el comando ROBOCOPY
ROBOCOPY ORIGEN DESTINO /E
Permite copiar de forma recursiva carpetas con subdirectorios aunque estén vacíos. ROBOCOPY ORIGEN DESTINO /S
Copia de forma recursiva carpetas con subdirectorios pero no los vaciosROBOCOPY ORIGEN DESTINO /MIR
MIR modo espejo, Copia de forma recursiva pero al terminar se eliminan los archivos en el destino que ya no existen en el origen.Es posible indicar archivos específicos para ser copiados usando asteriscos de la siguiente forma:
ROBOCOPY ORIGEN DESTINO *.doc /E
En este caso solo se copiarán documentos de extensión de archivo .DOC, si esta opción no es utilizada se emplea de forma predeterminada *.* o sea se copian todos los archivos encontrados.Algunas de las opciones que permite el comando robocopy.
| /R:n | Numero de reintentos en caso de algún error. |
| /W:n | Tiempo de espera entre reintentos. |
| /MT:n | Realiza copias multiproceso, n especifica el número de hilos, el valor predeterminado es 8, n debe estar comprendido entre 1 y 128. |
| /MOV | Mueve archivos y los elimina del origen después de ser copiados. |
| /MOVE | Mueve archivos y carpetas y los elimina del origen después de ser copiados. |
| /V | Mostrar información detallada durante la copia. |
| /L | Hace una simulación, solo mostrar no copia. |
| /FP | Incluir ruta de acceso completa de los archivos en el resultado. |
| /NJH | No muestra el encabezado en la consola. |
| /NJS | No muestra el resumen final. |
| /Z | Copia archivos en modo reiniciable. Escribirá un registro en el archivo incompleto en caso de que la operación se vea interrumpida, para que en otra ejecución de Robocopy pueda continuarse por donde se dejó. |
| /MAX:n | Tamaño máximo de archivo, no se copian archivos mayores que el valor de n expresado en bytes. |
| /MIN:n | Tamaño mínimo de archivo, no se copian archivos menores que el valor de n expresado en bytes. |
| /MAXAGE:n | Antigüedad máxima de archivo, no se copian archivos mayores que el valor de n en días, puede usarse también fecha. |
| /MINAGE:n | Antigüedad mínima de archivo no se copian archivos menores que el valor de n en días, puede usarse también fecha. |
| /RH:hhmm-hhmm | Horas de ejecución, intervalo de horas en formato de 24 horas en que se debe iniciar la copia. |
| /LOG:log.txt | Permite guardar un informa con los datos de la copia efectuada en un archivo de texto. |
Para crear una lista en tu escritorio con todas las opciones para usar con Robocopy solo introduce en la consola:
robocopy.exe /?>%userprofile%\Desktop\Opciones_Robocopy.doc
Ejemplos prácticos de tareas en que usar el comando ROBOCOPY
Algunos ejemplos prácticos de códigos empleados para usar Robocopy, distintas opciones que se pueden usar. Para no crear confusión se utiliza la misma carpeta de origen.
Se utiliza %userprofile% que es una variable de entorno que sustituye el nombre de usuario, ya que en cada PC este es diferente.
Siempre asegúrate que si la ruta que utilizas contiene espacios en el nombre, es necesario encerrarla entre comillas.
ROBOCOPY %userprofile%\Documents D:\BACKUP\Documentos\ /E /MT:24 /LOG:%userprofile%\Desktop\copia.txtIntroduciendo la línea de código anterior en la consola, se crea un respaldo completo de la carpeta Mis documentos, emplea el modo multiproceso copiando con 24 hilos simultáneamente y al finalizar escribe el resultado en un log nombrado: copia.txt creado en el escritorio.
ROBOCOPY %userprofile%\Documents D:\BACKUP\Documentos\ *.doc /SCrea un respaldo de la carpeta Mis documentos, pero solo copiando archivos con la extensión .doc y .docx, asegurando que solo se copien las subcarpetas que no estén vacías.
ROBOCOPY %userprofile%\Documents D:\BACKUP\Documentos\ /e /MAX:10000Crea un respaldo de Mis documentos pero solo copiando archivos mayores de 10 KB.
ROBOCOPY %userprofile%\Documents D:\BACKUP\Documentos\ /S /MAXAGE:1Crea un respaldo de Mis documentos pero solo copiando archivos creados o modificados en las últimas 24 horas (/MAXAGE:1)
@echo off set dia=%date:~0,2% set mes=%date:~3,2% set year=%date:~6,4% ROBOCOPY %userprofile%\Documents D:\BACKUP\Documentos\%dia%-%mes%-%year%\ /MAXAGE:1La misma operación que con el código anterior, pero en este caso con un archivo batch que cada vez que se ejecuta crea una nueva carpeta con el formato dia-mes-año y permita conservar los respaldos anteriores.
ROBOCOPY %userprofile%\Documents D:\BACKUP\Documentos\ /E /RH:2350-2359Crea un respaldo completo de Mis documentos iniciándolo a las 11:50pm.
ROBOCOPY %userprofile%\Documents D:\BACKUP\Documentos\ /min:10000 /LListar. Muestra una lista de los archivos en la carpeta de origen, pero solo mayores de 10KB.
ROBOCOPY %userprofile%\Documents D:\BACKUP\Documentos\ /max:10000 /LListar. Muestra una lista de los archivos en la carpeta de origen, pero solo los menores de 10KB.
ROBOCOPY %userprofile%\Documents\Descargas D:\BACKUP\Documentos\Descargas\ /E /MOT:60Supervisar origen, crea un respaldo de la carpeta de Descargas y revisa cada 1 hora (60 minutos) si existe algún archivo nuevo, si es así lo agrega al respaldo ya hecho.
ROBOCOPY E:\ D:\BACKUP\DISK\ /E /R:0 /W:0 /VCopia datos de un CD insertado en la unidad E con sectores dañados, asegurando con la opción /R:0 que no se harán reintentos de lectura en errores y con la opción /W:0 que no habrá tiempo de espera. El éxito también depende de las características de la unidad óptica usada.
Usar los códigos de error de ROBOCOPY
Si haces un archivo batch para automatizar algunas tareas, puedes aprovechar los códigos de error generados para que se reproduzca un sonido y se muestre un mensaje de acuerdo con los resultados obtenidos.
El código de error 0 significa que no se han hecho cambios.
El código de error 1 significa que la copia ha sido hecha correctamente.
El código de error 4 y mayor significa que ha habido algún error.
Estos son solo algunos, puedes utilizarlos todos y personalizar el resultado a tu gusto.
Ejemplo del archivo batch, pruébalo:
@echo off ROBOCOPY %userprofile%\Documents D:\BACKUP\Documentos\ *.doc /s if errorlevel 4 echo DISCREPANCIAS & goto bad if errorlevel 1 echo Copia correcta & goto ok if errorlevel 0 echo Sin cambios & goto okk :bad start C:\Windows\Media\chord.wav msg * ERROR pause exit :ok start C:\Windows\Media\ding.wav msg * Copia correcta pause exit :okk start C:\Windows\Media\notify.wav msg * Sin cambios pause exit
Lista de todos los códigos de error generados en el uso de Robocopy.
Trucos y consejos al usar ROBOCOPY en Windows
• Al usar Robocopy en archivos batch puedes especificar como origen simplemente %1, de esta forma puedes arrastrar carpetas y directorios completos encima del batch y soltarlos, la copia se efectuará hacia el destino especificado en el código, un ejemplo:
robocopy %1 D:BACKUP /E
• Ten siempre la precaución de que los nombres de directorios que contengan espacios, deben estar encerrados entre comillas, por ejemplo:
➔ G:\Videos New - No funcionará
➔ "G:\Videos New" - OK
➔ "G:\Videos New" - OK
• Puedes crear en un archivo de texto la línea de comandos a ejecutar y después copiarla y pegarla en el cuadro de Inicio, de esa manera no será necesario abrir la consola previamente.
Hazlo de forma similar al siguiente ejemplo:
CMD /K ROBOCOPY D:\Videos "G:\Videos New" /E
La opción /K permite que la consola permanezca abierta, si utilizas /C, la consola se cerrará al terminar el proceso.Como emplear Robocopy para hacer copias en la red
ROBOCOPY por su característica de copiar solo archivos que se han modificado es de gran utilidad para realizar respaldos, tanto en la PC como en la red.
Plantilla de archivo batch para realizar una copia de una fuente determinada a un destino incluyendo todos los permisos de acceso, cuando se ejecute regularmente solo copiará archivos que hayan sido modificados. Para usarlo ingresa la ruta necesaria en la fuente y destino.
@ECHO OFF SETLOCAL SET _fuente=RUTA fuente SET _destino=RUTA destino SET _que=/COPYALL /B /SEC /MIR SET _opciones=/R:0 /W:0 /LOG:log.txt /NFL /NDL ROBOCOPY %_ fuente % %_destino% %_que% %_opciones%Significado de cada opción.
/COPYALL Copia información de todos los archivos.
/B Copiar archivos en modo de copia de seguridad.
/SEC Copia archivos con seguridad.
/MIR Reflejar un árbol de directorios.
/R:n Numero de reintentos.
/W:n Tiempo a esperar entre reintentos.
/LOG Ubicación del log de salida.
/NFL Sin lista de archivos, no registrar nombres de archivo.
/NDL Sin lista de directorios, no registrar nombres de directorio.
En caso de que necesites utilizar ROBOCOPY para realizar una copia de un servidor a otro en la red, es necesario autentificarse primero, hazlo el batch de la siguiente forma:
@ECHO OFF SETLOCAL SET _fuente=\\Servidor1\Usuario SET _destino=\\Servidor2\Backup_Usuario SET _que=/COPYALL /B /SEC /MIR SET _opciones =R:0 /W:0 /LOG:log.txt /NFL /NDL NET USE\\Servidor1\IPC$ /u:nombre_de_usuario contraseña ROBOCOPY %_ fuente % %_destino% %_que% %_opciones%Otro código en este caso útil para subir archivos de la PC a tu servidor web.
SET src="D:\origen de los archivos" SET dest="\\servidor\backup$" SET log="C:\logs\copia.log" robocopy %src% %dest% /E /Z /SEC /MIR /R:1 /LOG:%log%Es posible ejecutar dos tareas al mismo tiempo minimizadas, para eso utilízalo en un batch de la siguiente forma:
@ECHO OFF Start /Min "tarea1" Robocopy\\ArchivoServidor1\C$\Database1\\ArchivoServidorBackupA\c$\Backups Start /Min "tarea2" Robocopy\\ArchivoServidor2\C$\Database2\\ArchivoServidorBackupB\c$\BackupsPara limitar el ancho de banda al usar Robocopy en la red, es posible usar el parámetro /IPG:n que enviará paquetes de 64KB cada uno seguidos por un retraso especificado en n de milisegundos.
Descarga en el link a continuación de forma gratis un archivo PDF en el que se encuentran detalladas todas las opciones que se pueden emplear con el comando Robocopy, además varios códigos que son ejemplos prácticos de su uso.
Para los que no les agrada la edición en la consola de CMD, pero quieren beneficiarse con las ventajas que ofrece el comando ROBOCOY, en la siguiente página puedes leer sobre cómo usar este comando de manera más sencilla, solo arrastrando las carpetas a copiar sobre la consola, método preferido por la gran mayoría de las personas que no poseen conocimientos avanzados.
Como copiar archivos, carpetas y datos más rápido y a toda velocidad en Windows
Como copiar archivos, carpetas y datos más rápido y a toda velocidad en Windows
Páginas relacionadas
◄ Como copiar archivos, carpetas y datos más rápido y a toda velocidad en Windows
◄ Hacer backup o respaldo de archivos en Windows usando ROBOCOPY
◄ Comandos para copiar de manera rápida desde unidades ópticas y USB a la PC
◄ Hacer backup o respaldo de datos en una memoria flash de forma automática
◄ Tutorial para usar la consola de comandos y crear archivos batch en Windows
◄ Hacer backup o respaldo de archivos en Windows usando ROBOCOPY
◄ Comandos para copiar de manera rápida desde unidades ópticas y USB a la PC
◄ Hacer backup o respaldo de datos en una memoria flash de forma automática
◄ Tutorial para usar la consola de comandos y crear archivos batch en Windows