Copiar archivos entre discos con XCOPY o ROBOCOPY: guía total

Última actualización: 24/09/2025
Autor: Isaac
  • ROBOCOPY permite espejo (/MIR), monitorización y programación; XCOPY cubre copias masivas sencillas.
  • Copias incrementales con XCOPY (/D, /U) y ROBOCOPY (/XO, /MAXAGE, /XL) según política.
  • Opciones avanzadas en ROBOCOPY: multihilo, reintentos, logs, seguridad NTFS y filtros finos.
  • Alternativas gráficas (AOMEI/EaseUS) para sincronizar, respaldar y restaurar sin consola.

Copiar archivos con xcopy y robocopy

Si trabajáis con Windows, tarde o temprano necesitaréis mover grandes volúmenes de datos entre discos o servidores. En ese escenario, los comandos XCOPY y ROBOCOPY son dos navajas suizas imprescindibles: rápidos, flexibles y pensados para automatizar desde copias puntuales hasta sincronizaciones programadas.

En las próximas líneas encontraréis una guía práctica y muy completa para entender qué hace cada herramienta, cuándo conviene usar una u otra, y cómo exprimirlas con los conmutadores adecuados para casos reales: clonar estructuras de carpetas, copiar solo archivos nuevos o modificados, programar ventanas de copia, monitorizar cambios, generar logs y mucho más.

Qué son XCOPY y ROBOCOPY en Windows

XCOPY y ROBOCOPY son utilidades de línea de comandos integradas en Windows que sirven para copiar archivos y directorios. XCOPY se centra en copiar múltiples ficheros o árboles completos (incluida red), con funciones más avanzadas que COPY. ROBOCOPY (Robust File Copy) va un paso más allá: es un motor de replicación robusto con decenas de parámetros para sincronizar, espejar, reintentar ante errores y registrar todo.

Diferencias clave entre XCOPY y ROBOCOPY

La gran diferencia funcional es el mirroring: ROBOCOPY puede “espejar” (/MIR) un árbol de directorios, eliminando en destino lo que ya no exista en origen; XCOPY no hace espejo como tal.

En automatización, ROBOCOPY destaca con /RH (Run Hours) para fijar franjas horarias de ejecución, algo que XCOPY no ofrece de forma nativa. Esto permite lanzar trabajos fuera de horas punta sin depender del momento del comando.

En monitorización, ROBOCOPY incorpora /MON:n y /MOT:m para vigilar cambios: replica tras n modificaciones o cada m minutos si detecta novedades. XCOPY no tiene un modo de escucha equivalente.

En atributos, ambos tratan el atributo Archive, pero ROBOCOPY copia más metadatos (seguridad, propietario, auditoría, marcas de tiempo) con /COPY y /DCOPY. Esto es clave en entornos NTFS con permisos finos.

Limitaciones y consideraciones importantes

Ni XCOPY ni ROBOCOPY son mágicos con archivos en uso: los ficheros abiertos suelen dar problemas de bloqueo, salvo que tiréis de servicios de instantáneas o de alternativas que soporten VSS. Tenedlo en cuenta en sistemas en producción.

XCOPY no muestra progreso detallado y puede resultar espartano; no es la opción ideal para realizar copias de seguridad de volúmenes del SO “en caliente”. En cambio, ROBOCOPY sí ofrece más verbosidad y códigos de salida útiles.

Sobre compatibilidad, en sistemas anteriores a Windows Vista se reportaron comportamientos de reflejo no ideales en ROBOCOPY; en versiones modernas de Windows funciona como se espera. También recordad la granularidad temporal FAT: con /FFT asumimos precisión de 2 segundos.

Cómo usar XCOPY paso a paso

La forma general es XCOPY origen destino . A modo de ejemplo, para copiar una carpeta con todo su contenido, incluidos ocultos y subcarpetas vacías, y continuar ante errores, podéis usar:

XCOPY C:\test D:\test /E /H /C /I

Significado de esos conmutadores: /E (subdirectorios, incluidos los vacíos), /H (archivos ocultos y de sistema), /C (seguir aunque haya errores) e /I (si duda, asumir destino como directorio). Son los básicos para copias masivas sin interrupciones tontas.

  Cómo usar tu PC con Windows como un router: guía práctica y opciones avanzadas

Consejo de oro: si hay espacios en rutas, envolvedlas entre comillas, por ejemplo "D:\Mis Datos". Evitaréis fallos por parsing del shell.

Cómo usar ROBOCOPY paso a paso

La sintaxis base es ROBOCOPY origen destino . Para copiar ficheros concretos desde una carpeta a otra, un ejemplo simple sería:

robocopy E:\backuptest F:\backuptest1 a-test.docx b-test.txt

Para hacer copias “inteligentes” podéis añadir /XO (excluir más antiguos) o /MIR (espejo, equivalente a /E + /PURGE). Son dos modos habituales de incremental/sincronización según la política deseada.

Ejemplo real combinando multihilo y reanudación en cortes de red: mejora rendimiento y resiliencia con /MT y /Z copiando a un recurso compartido:

robocopy C:\reports \\marketing\videos yearly-report.mov /mt /z

Y no olvidéis registrar: guardad un log para auditar y verificar más tarde. Por ejemplo: /LOG:C:\Logs\Backup.log o en Unicode con /UNILOG.

Copiar solo archivos nuevos o modificados

Hay dos enfoques clásicos: XCOPY con /D y variantes, y ROBOCOPY con filtros de fecha/antigüedad o exclusión. Elegid según queráis permitir nuevos archivos en destino o solo actualizar los ya existentes.

Con XCOPY, la sintaxis relevante es /D. Sin fecha, copia lo que sea más nuevo que el destino. Podéis combinar con /U para copiar únicamente archivos que ya existan en el destino (no crea nuevos), /S para subcarpetas y /Y para no preguntar al sobrescribir.

Escenarios típicos con XCOPY (ajustad rutas y usad comillas si procede): cubren desde actualizar solo existentes hasta traer también nuevos directorios.

  • Actualizar lo más reciente (puede crear nuevos si no existen): xcopy "D:\Source" "K:\Target" /S /D
  • Actualizar sin crear nuevos directorios: xcopy "D:\Source" "K:\Target" /I /D /Y
  • Actualizar solo si ya existe en destino: xcopy "D:\Source" "K:\Target" /S /D /U
  • Traer también directorios nuevos: xcopy "D:\Source\copy files" "K:\Target\files copiados" /I /D /Y /E

Con ROBOCOPY, dos técnicas son habituales: filtrar por antigüedad con /MAXAGE:n (n días) y/o excluir más antiguos con /XO. Para evitar directorios vacíos, añadid /S. Así lográis incrementales sencillos sin complicaciones.

  • Copiar lo más nuevo o añadido: robocopy D:\folder1 E:\folder2 /MAXAGE:7 o robocopy D:\folder1 E:\folder2 /XO /MAXAGE:7
  • Sin carpetas vacías: añadid /S a cualquiera de las anteriores

¿Caso muy específico? Quizá queréis copiar solo los que han cambiado, pero no crear nuevos (como pidió un administrador para comparar cambios de configuración). Con ROBOCOPY podéis usar /XL para excluir archivos “solitarios” (presentes en origen pero no en destino) y dejar que copie solo los que difieren: robocopy "C:\Origen" "D:\Destino" /S /XL. Así se actualizan los modificados existentes y no se añaden ficheros nuevos.

Espejo y sincronización: /MIR, /PURGE y precauciones

El modo espejo de ROBOCOPY, /MIR, replica y también elimina en destino lo que falte en origen (equivale a /E + /PURGE). Útil para despliegues limpios, pero “peligroso” si apuntáis mal: si os equivocáis de destino, podéis borrar datos que no queríais tocar.

Si buscáis solo limpieza de archivos sobrantes, /PURGE basta; /MIR además asegura la estructura completa (incluidas vacías). Elegid la pareja que mejor encaje con vuestra política de sincronización.

Copiar solo la estructura de carpetas con XCOPY

Cuando necesitáis replicar la jerarquía sin los ficheros, XCOPY lo resuelve con /T (solo estructura) y /E (incluye subcarpetas vacías). Es ideal para preparar andamiajes en nuevos entornos.

Ejemplo: XCOPY "C:\Users\Default\Carpeta de pruebas" "D:\Pruebas" /T /E. La primera ruta es el origen cuya estructura queréis clonar; la segunda, el destino donde crearéis esa misma jerarquía.

  Descubre cómo autorizar el ordenador portátil en iTunes

Cuatro formas de hacer copias desde CMD

Quienes prefieren la consola pueden cubrir casi cualquier necesidad con estas opciones. Elegid en función de si son archivos sueltos, estructuras, o si necesitáis imagen de sistema:

  • 1) ROBOCOPY: comando recomendado para copias robustas y grandes, con más de 80 parámetros y conmutadores. Ideal para compartir de red de gran tamaño, reintentos automáticos y logs detallados.
  • 2) XCOPY: línea clásica para archivos y directorios con interruptores útiles como /D, /E, /H, /C. Sencillo y suficiente para muchos lotes básicos.
  • 3) Bloc de notas (Notepad): en entornos de recuperación, lanzad notepad.exe desde CMD, usad Archivo > Guardar como para navegar y copiad a USB con “Enviar a”. Truco útil cuando el sistema no arranca y queréis salvar ficheros sin pelearos con comandos.
  • 4) EaseUS Todo Backup (CLI): para particiones, discos y sistema, su comando etbcmd permite copias completas, diferenciales e incrementales, incluso a rutas de red, y también tiene GUI.

AOMEI Backupper: alternativa gráfica para sincronizar y respaldar

Si preferís una interfaz gráfica y opciones avanzadas sin memorizar conmutadores, AOMEI Backupper es una alternativa muy completa a XCOPY/ROBOCOPY para sincronizar y hacer copia de seguridad.

Entre sus funciones están: sincronizar con USB, NAS, red o nube; sincronización unidireccional, bidireccional, espejo y en tiempo real (estas tres últimas en ediciones de pago); programación automática y capacidad de copiar archivos abiertos sin bloquear el trabajo.

Guía rápida de sincronización básica: Instalar y abrir, ir a Sincronizar > Sincronización Básica, escoger carpetas origen, elegir el destino (disco externo, red, nube…), y programar si queréis diaria, semanal o mensual. Podéis añadir notas y activar notificación por email.

Además permite copia de seguridad de archivos (comprime en imagen), recuperación y clonación, y otras utilidades. Si usáis su nube, tras el registro ofrecen 1 TB de prueba por 15 días para backup en la nube.

ROBOCOPY a fondo: opciones principales bien organizadas

Para sacarle todo el jugo, aquí tenéis las categorías de parámetros más relevantes. Todos se consultan también con “robocopy /?” en CMD por si queréis ampliar detalle.

Opciones de copia

  • /S: subdirectorios (excluye vacíos). /E: subdirectorios incluidos vacíos.
  • /Z: modo reiniciable. /B: modo copia de seguridad. /ZB: reiniciable y si falla, pasa a backup.
  • /J: E/S sin búfer (recomendado en archivos grandes). /EFSRAW: copia cifrados en modo sin procesar.
  • /COPY:<D,A,T,X,S,O,U>: qué propiedades copiar (datos, atributos, tiempos, ACL, propietario, auditoría; por defecto DAT).
  • /DCOPY:<D,A,T,E,X>: qué copiar en directorios (por defecto DA).
  • /SEC (= /COPY:DATS), /COPYALL (= DATSOU), /NOCOPY (útil con /PURGE), /SECFIX, /TIMFIX.
  • /PURGE: borra en destino lo que falte en origen. /MIR: espejo (= /E + /PURGE).
  • /MOV: mueve archivos. /MOVE: mueve archivos y directorios.
  • /A+: y /A-:: añadir o quitar atributos al copiar.
  • /CREATE: crea árbol y archivos de longitud cero. /FAT: nombres 8.3. /256: desactivar rutas > 256.
  • /MON:n, /MOT:m: monitorizar cambios. /RH:hhmm-hhmm: ventana horaria. /PF: chequeo por archivo.
  • /IPG:n: espaciar paquetes (líneas lentas). /SJ//SL: comportamiento con enlaces simbólicos.
  • /MT:n: multihilo (1–128, por defecto 8). No compatible con /IPG ni /EFSRAW. Mejora mucho el rendimiento.
  • /NODCOPY, /NOOFFLOAD, /COMPRESS, /SPARSE:y|n, /NOCLONE: ajustes avanzados de copia.
  • /IOMAXSIZE, /IORATE, /THRESHOLD: limitación de E/S y ancho de banda (mínimo 524.288 bytes/s).
  Compartir Unidades y Carpetas desde 'Este equipo' en Red Local en Windows

Selección de archivos

  • /A: solo con atributo Archivo. /M: Archivo y lo limpia tras copiar.
  • /IA: e /XA:: incluir/excluir por atributos.
  • /XF nombres, /XD directorios: excluir por patrón (comodines * y ?).
  • /XC: excluye si misma marca de tiempo pero distinto tamaño. /XN: excluye más nuevos en destino. /XO: excluye más antiguos.
  • /XX: excluye extra en destino (no borra). /XL: excluye “solitarios” (solo en origen).
  • /IM: incluir modificados (tiempos de cambio). /IS: incluir iguales. /IT: incluir “retocados” (atributos).
  • /MAX:n, /MIN:n: límites de tamaño. /MAXAGE:n, /MINAGE:n: límites por antigüedad o fecha.
  • /MAXLAD, /MINLAD: últimos accesos (si n < 1900 son días; si no, AAAAMMDD).
  • /XJ, /XJD, /XJF: excluir puntos de unión. /FFT: tiempos FAT (2 s). /DST: ajustar horario de verano.

Reintentos

  • /R:n: reintentos (por defecto 1.000.000). /W:n: espera entre reintentos (por defecto 30 s). /REG: guardar como predeterminado.
  • /TBD: esperar a que se definan nombres compartidos (error 67). /LFSM: modo poco espacio libre, pausa y reanuda en función del “suelo” del volumen.

Registro (logging)

  • /L: solo enumera (no copia/borra/fecha). /V: salida detallada. /TS: marcas de tiempo. /FP: rutas completas. /BYTES: tamaños en bytes.
  • /NS, /NC, /NFL, /NDL, /NP: ajustar verbosidad (sin tamaños, clases, nombres, progreso…). /ETA: tiempo estimado.
  • /LOG:file, /LOG+:file, /UNILOG:file, /UNILOG+:file, /TEE, /NJH, /NJS, /UNICODE: control total del log.

Trabajos

  • /JOB:nombre, /SAVE:nombre: guardar/cargar parámetros de un “job”. /QUIT: salir tras procesar línea (ver parámetros).
  • /NOSD//NODD: sin origen/destino. /IF: incluir archivos especificados.

Notas adicionales oficiales: /MIR y /PURGE ya no tocan System Volume Information en raíces; la “clasificación de modificados” requiere sistemas de archivos que soporten tiempos de cambio; /DCOPY:E intenta copiar atributos extendidos en directorios; los parámetros de limitación pueden ajustarse y el sistema puede forzar límites válidos; /LFSM fija el suelo al 10% del volumen si no dais valor y es incompatible con /MT y /EFSRAW.

Códigos de salida

  • 0: no se copiaron archivos, sin errores.
  • 1: todo copiado correctamente.
  • 2: hay archivos extra en destino, no se copió.
  • 3: algunos copiados, había extra, sin errores.
  • 5: algunos copiados, otros no coincidían, sin errores.
  • 6: extra y no coincidentes; no se copió, sin errores.
  • 7: se copió algo, hubo errores de coincidencia y extra.
  • 8: varios archivos no se copiaron.

Ejemplos útiles

  • Copiar todo (vacías incluidas) con reinicio y log: robocopy C:\Users\Admin\Records D:\Backup /E /ZB /LOG:C:\Logs\Backup.log
  • Espejar con pocos reintentos y espera corta: robocopy C:\Users\Admin\Records D:\Backup /MIR /R:2 /W:5 /LOG:C:\Logs\Backup.log
  • Copiar subcarpetas y conservar DAT con 16 hilos: robocopy C:\Users\Admin\Records D:\Backup /S /E /COPY:DAT /MT:16 /LOG:C:\Logs\Backup.log
  • Mover excluyendo lo anterior a 7 días: robocopy C:\Users\Admin\Records D:\Backup /S /MAXAGE:7 /MOV /LOG:C:\Logs\Backup.log
  • Con ETA y limpieza de sobrantes: robocopy C:\Users\Admin\Records D:\Backup /ETA /PURGE /LOG:C:\Logs\Backup.log
  • Limitar E/S a 1 MB/s: robocopy C:\Records D:\Backup /iorate:1m
  • No copiar nada si ya existe (cualquiera sea la fecha): robocopy C:\Source C:\Destination /XC /XN /XO
robocopy
Artículo relacionado:
Robocopy: Tutorial sobre el Comando para Copiar y Sincronizar Archivos