Está en la página 1de 17

Como usar el comando Robocopy en Windows,

ejemplos prácticos y códigos

Como copiar de forma rápida, eficaz y eficiente archivos, carpetas, datos,


informaciones, discos CDROM, DVD en la computadora local, en la red y en
internet usando ROBOCOPY. 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. Inicia la aplicación Robocopy.exe incluida en todas las versiones de
Windows, que 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.
En la práctica ROBOCOPY ofrece un sinnúmero de opciones y las copias se
efectúan a la máxima velocidad que permiten físicamente los dispositivos.
Ningún programa o aplicación es capaz de ni siquiera acercarse a los
resultados de ROBOCOPY.
Aunque solo funciona mediante la línea de comandos, cualquier usuario con
pocos conocimientos puede aprovecharse de sus ventajas usándolo con las
opciones elementales.
Imagen que muestra un proceso de copia de archivos en Windows usando
ROBOCOPY, puede observarse la velocidad a la que se realizó el proceso.

1 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.

2 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 vacios

ROBOCOPY 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.

3 Opciones que permite el comando ROBOCOPY

/R:n Numero de reintentos en caso de algún error.

/W:n Tiempo de espera entre reintentos.

Realiza copias multiproceso, n especifica el número de hilos, el valor


/MT:n
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.

Copia archivos en modo reiniciable. Escribirá un registro en el archivo


/Z 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ó.

Tamaño máximo de archivo, no se copian archivos mayores que el valor de


/MAX:n
n expresado en bytes.

Tamaño mínimo de archivo, no se copian archivos menores que el valor de n


/MIN:n
expresado en bytes.

Antigüedad máxima de archivo, no se copian archivos mayores que el valor


/MAXAGE:n
de n en días, puede usarse también fecha.

Antigüedad mínima de archivo no se copian archivos menores que el valor


/MINAGE:n
de n en días, puede usarse también fecha.

/RH:hhmm- Horas de ejecución, intervalo de horas en formato de 24 horas en que se


hhmm debe iniciar la copia.

Permite guardar un informa con los datos de la copia efectuada en un


/LOG:log.txt
archivo de texto.

Para crear un documento en tu escritorio con todas las opciones que permite el
comando Robocopy, solo introduce en la consola de CMD:
robocopy.exe
/?>%userprofile%\Desktop\Opciones_Robocopy.doc
4 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.txt
Introduciendo 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 /S
Crea 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:10000
Crea un respaldo de Mis documentos pero solo copiando archivos mayores de
10 KB.

ROBOCOPY %userprofile%\Documents D:\BACKUP\Documentos\ /S


/MAXAGE:1
Crea 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:1
La 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-2359
Crea un respaldo completo de Mis documentos iniciándolo a las 11:50pm.

ROBOCOPY %userprofile%\Documents D:\BACKUP\Documentos\


/min:10000 /L
Listar. Muestra una lista de los archivos en la carpeta de origen, pero solo
mayores de 10KB.

ROBOCOPY %userprofile%\Documents D:\BACKUP\Documentos\


/max:10000 /L
Listar. 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:60
Supervisar 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 /V


Copia 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.

5 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

6 Lista de todos los códigos de error generados por ROBOCOPY

if errorlevel 16 echo ***ERROR FATAL*** & goto end


if errorlevel 15 echo FAIL MISM XTRA COPY & goto end
if errorlevel 14 echo FAIL MISM XTRA & goto end
if errorlevel 13 echo FAIL MISM COPY & goto end
if errorlevel 12 echo FAIL MISM & goto end
if errorlevel 11 echo FAIL XTRA COPY & goto end
if errorlevel 10 echo FAIL XTRA & goto end
if errorlevel 9 echo FAIL COPY & goto end
if errorlevel 8 echo FAIL & goto end
if errorlevel 7 echo MISM XTRA COPY & goto end
if errorlevel 6 echo MISM XTRA & goto end
if errorlevel 5 echo MISM COPY & goto end
if errorlevel 4 echo MISM & goto end
if errorlevel 3 echo XTRA COPY & goto end
if errorlevel 2 echo XTRA & goto end
if errorlevel 1 echo COPY & goto end
if errorlevel 0 echo Sin cambios & goto end

7 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
• 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.

8 Usar ROBOCOPY para hacer una copia idéntica de un disco


duro completo

Si en algún momento necesitas clonar un disco duro, es decir hacer una copia
idéntica de todos los archivos e información, puedes usar ROBOCOPY para esa
tarea.
Es la opción ideal cuando necesitamos reemplazar un disco por otro más
reciente.
Solo necesitamos conectar los dos discos y percatarnos que letra de unidad les
asigna Windows.
En caso que vayamos a copiar un disco que posee una instalación de Windows,
necesitamos hacer dicha tarea en otra PC.
Usa el siguiente comando en la consola de CMD o en la herramienta Ejecutar:
ROBOCOPY D:\ E:\ /E /R:0 /W:0 /V
Sustituye D: por la letra asignada al disco cuyo contenido se va a copiar.
Sustituye E: por la letra asignada al disco donde se va a pegar la información.
Las opciones /R:0 /W:0 evitan reintentos de lectura en caso de errores y que no
habrá tiempo de espera.

9 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\\ArchivoServidorBa
ckupA\c$\Backups
Start /Min "tarea2"
Robocopy\\ArchivoServidor2\C$\Database2\\ArchivoServidorBa
ckupB\c$\Backups
Para 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.
10 Como copiar archivos, carpetas y datos más
rápido y a toda velocidad en Windows
Como hacer copias más rápidas y veloces en Windows, solo arrastrando las
carpetas a la ventana de CMD o Símbolo del sistema, usar el comando
ROBOCOPY para copiar archivos, ya estén en el mismo equipo o desde la red o
internet, pero sin tener que escribir el código ni la ruta necesaria. Copiar desde
un disco duro, una memoria flash, un CDROM, un DVD o una unidad de red.
Incrementar el rendimiento y la velocidad de cualquier copia sin tener que
instalar ningún programa externo.

Existen varias aplicaciones en internet que prometen más rapidez en la copia


de archivos en Windows, algunas incluso son de pago.
Con ellas los desarrolladores obtienen grandes beneficios, todo eso debido a
la decepción de los usuarios al utilizar la herramienta incluida en Windows,
para copiar archivos y carpetas.
La herramienta de hacer copias de Windows no es muy popular, cuando se
trata de archivos grandes es muy poco eficiente, lenta y nos adormece por
completo el equipo, haciendo casi imposible la realización de otras tareas,
además nos roba mucha memoria, posee un estimador del tiempo restante
engañoso y en caso de errores, por ejemplo haciendo copias de discos con
defectos, no copia absolutamente nada, después de habernos tenido rato
esperando por el resultado de la operación.
No obstante Windows entre su arsenal de herramientas de la línea de
comandos, tiene una aplicación nombrada ROBOCOPY que es sorprendente
por los recursos que posee para hacer las copias.

11 ¿Que es ROBOCOPY?

Robocopy es una minúscula aplicación, funciona únicamente mediante la línea


de comandos, por lo que no es muy conocida y popular.
Es asombroso su rendimiento y la velocidad a la que efectúa las operaciones,
el límite de lo que permiten los dispositivos de hardware que se utilicen, ya sea
un disco duro, una memoria flash o dispositivo USB, una unidad de disco o
desde cualquier equipo en la red, la velocidad en todos los casos será la
máxima posible.

12 ¿Por qué es tan eficiente ROBOCOPY para copiar


archivos?

Esto es debido a que ROBOCOPY, al funcionar mediante la línea de comandos,


accede directamente al núcleo del sistema como otros comandos y al no tener
interface no consume prácticamente memoria.
Otra página de este sitio: Como usar el comando Robocopy en Windows, está
dedicada de forma más avanzada, al uso de del comando ROBOCOPY con
todas las opciones que permite, en este artículo se demuestra la forma de
usarlo, pero sin tener que introducir los códigos y rutas manualmente, solo
arrastrando las carpetas que contienen los archivos a copiar, lo que puede
resultar muy útil para los que le causa fobia el trabajo en MSDOS.

13 Como copiar datos en el equipo con el comando


ROBOCOPY

Aunque no se tenga ningún conocimiento del uso de los comandos en


Windows, es posible usar ROBOCOPY de forma sencilla.
Resulta de especial utilidad cuando existe necesidad de copiar archivos muy
grandes o cuando se necesita copiar carpetas que contienen muchos archivos
pequeños.
Para copiar cualquier tipo de datos dentro de la PC, ya sea que se encuentren
en el mismo disco duro o en diferentes discos, sigue los siguientes pasos.
1- Abre una ventana de la consola de CMD.
Otra forma de abrir la consola, en el escritorio con la tecla Shift presionada, da
un clic derecho con el ratón y en el menú escoge: "Abrir ventana de comandos
aquí".
2- Escribe ROBOCOPY y presiona la barra espaciadora una vez para crear un
espacio.
3- Busca la carpeta que contiene los archivos a copiar, arrástrala a la ventana
de la consola y suéltala encima de ella, presiona la barra espaciadora de nuevo.
4- Busca la carpeta donde se copiarán los archivos, arrástrala a la ventana de la
consola y sueltala.
5- Finalmente presiona la tecla Enter, la copia comenzará.

14 Infografía: Copiar archivos más rápido en Windows usando


ROBOCOPY

En la siguiente imagen puedes ver los pasos del proceso, da un clic en ella para
cargar una infografía en esta misma página, donde se muestran todos los
pasos detallados.

➔ Ten presente que no es necesario escribir las rutas en la consola, al soltar la


carpeta encima de la ventana de MSDOS, se representará la ruta en la misma.
➔ Observa que debe existir un espacio entre cada paso que se realice.
➔ Si la carpeta a copiar contiene subcarpetas usa: ROBOCOPY /S

15 Tips y consejos
De la misma forma anterior puedes utilizar ROBOCOPY para copiar de
unidades CDROM o de DVD, si necesitas copiar varios discos a la misma
carpeta contenedora, no es necesario que cierres la ventana de la consola al
terminar la primera copia, solo expulsa el disco e inserta el siguiente, a
continuación presiona la tecla F5 y la tecla Enter, ROBOCOPY comenzará la
nueva copia al mismo destino.

16 Como copiar datos entre la PC y otro equipo en una red


local

Sigue los dos primeros pasos que en el metodo anterior, o sea abrir la ventana
de CMD y escribir ROBOCOPY.
1- Busca en tu equipo la carpeta con los datos a copiar, arrástrala a la consola
y crea un espacio.
2- Si estás conectado a una red local, abre mi PC y escribe en la barra de
direcciones la ubicación del otro equipo de alguna de las dos formas:
• \\NombredelEquipo
• \\DireccionIP, por ejemplo: \\192.168.1.1

La dirección IP del otro equipo la puedes saber mediante el comando IPCONFIG, lee como
hacerlo en la siguiente página: Como usar el comando IPCONFIG.

3- Oprime Enter
4- Al mostrarse el equipo en mi PC, busca la carpeta que contiene los archivos
a copiar, arrástrala a la ventana de cmd y suéltala.
5- Oprime la tecla Enter para comenzar la copia.
Realiza la operación a la inversa si la copia es del equipo en la red a la PC local.

17 Como copiar datos entra la PC y otro equipo o servidor


en internet

En este caso es aconsejado utilizar un cliente FTP, es decir un programa que


permite abrir una especie de explorador, donde se muestra en forma de árbol
la estructura del equipo remoto. Las operaciones a realizar para efectuar una
operación de copia con robocopy son las mismas, seleccionar la carpeta y
arrastrarla a la consola. Existen varios programas disponibles en la red
gratuitos como Filezilla.
La otra opción bastante parecida al método anterior, es igualmente utilizar al
explorador de Windows, lo que en este caso no bastará el nombre y la
dirección IP. Será necesario el nombre de usuario y la contraseña para
autentificarse en el servidor remoto, se hace utilizando el siguiente formato:
ftp://nombreusuario@ftpservidor.direccion.com
La gran desventaja de este método en relación con el cliente FTP del que se
habló anteriormente, es que en este caso los datos para autentificarse viajarán
por la red sin encriptarse, en formato de texto plano lo que constituye en
riesgo en materia de seguridad y un peligro de que puedan ser interceptados.

18 Principales opciones que permite el comando ROBOCOPY

Al usar ROBOCOPY en archivos grandes, por ejemplo películas, DVD, o en


carpetas que contienen gran cantidad de archivos, te darás cuenta la gran
ventaja de su empleo, comprenderás y comprobarás, si has usado algunos de
los programas que circulan en la red para la copia de archivos, la superioridad
de ROBOCOPY sobre todos ellos.
Uno de los usos más extendidos de ROBOCOPY es crear respaldos o backups
de datos, ya que en ese caso solo se copiarán archivos nuevos y que no existan
en el respaldo o los que hayan sido modificados, que permitirá no
sobreescribir los archivos.
Permite además múltiples opciones, como especificar qué tipo de archivos se
deben copiar, seleccionarlos por fecha de modificación, por tamaño, etc.

19 Información adicional
20 Como abrir la ventana de la consola de CMD o MSDOS

Los que no tienen ninguna experiencia en el uso de la línea de comandos en


Windows, necesitaran elementos básicos sobre el uso de la consola de CMD.
Existen varias formas de iniciar la consola de comandos o ventana de MSDOS,
utiliza de las siguientes, la que te sea más fácil.
• Escribe en el cuadro de Inicio: CMD y oprime la tecla Enter.
• Clic derecho en el escritorio con la tecla Shift presionada, en el menú
escoge: "Abrir ventana de comandos aquí".
• Crea un acceso directo con la siguiente ruta: C:\Windows\System32\cmd.exe.
• Crea un nuevo documento de texto, escribe en el solamente: cmd.exe,
guárdalo comoconsola.cmd, asegúrate que el nombre de archivo no termine
en .txt

En Windows 8 solo es necesario en la pantalla de inicio escribir: CMD y


presionar la tecla Enter.

21 Como utilizar el comando ROBOCOPY en Windows XP

Lamentablemente Windows XP no incluye el comando ROBOCOPY, es


proporcionado a partir del lanzamiento de Windows Vista, pero puedes
agregarlo fácilmente a tu sistema.
Para eso descarga el archivo en el siguiente link, descomprímelo y la aplicación
que contiene cópiala o muévala al interior de la carpeta: C:\Windows, es
suficiente, a partir de ese momento estará disponible al ejecutar ROBOCOPY
en la consola.