Solución rápida: Use robocopy en modo lista (no copia, solo enumera diferencias): robocopy "C:\Source" "D:\Target" /e /l /njh /njs. Salida: archivos que se copiarían. /l = solo listar, /e = incluir subdirectorios, /njh /njs = sin encabezado de trabajo / resumen. Para comparar bidireccionalmente: también robocopy "D:\Target" "C:\Source" /e /l /njh /njs.
La opción /l de robocopy: enumera los archivos que se procesarían sin copiarlos realmente. Útil para comparar dos directorios. Muestra archivos adicionales, archivos faltantes, archivos con marcas de tiempo diferentes.
Afecta a: Windows 11.
Tiempo de solución: ~30 minutos (según el tamaño de la unidad).
Qué causa esta necesidad
Comparar dos unidades para:
- Verificar la integridad de la copia de seguridad.
- Encontrar archivos faltantes.
- Sincronizar directorios.
- Auditar la integridad de los datos.
- Verificación previa antes de fusionar.
Método 1: Modo lista para comparación
La ruta estándar.
- Abra el Símbolo del sistema.
- Ejecute:
robocopy "C:\Source" "D:\Target" /e /l /njh /njs- /e: incluir todos los subdirectorios.
- /l: solo listar; no copiar.
- /njh: sin encabezado de trabajo.
- /njs: sin resumen de trabajo.
- Salida: archivos en Origen que no coinciden con Destino (se copiarían).
- Dirección inversa para los que faltan en Origen:
robocopy "D:\Target" "C:\Source" /e /l /njh /njs - Para mostrar archivos adicionales en el destino: opción
/xx. - Para detalle verboso:
/vmuestra también los archivos omitidos.
Esta es la solución estándar.
Método 2: Informe detallado con /log
Para documentación.
- Guardar la comparación en un archivo:
robocopy "C:\Source" "D:\Target" /e /l /v /log:C:\compare.log - Abra
compare.logen Notepad / Excel. - Categorías:
- Same: archivo en ambos, atributos coincidentes.
- Newer: el archivo en el destino es más reciente.
- Older: el archivo en el destino es más antiguo.
- Lonely: archivo en el origen pero no en el destino.
- Extra: archivo en el destino pero no en el origen.
- Para análisis en Excel: analice las columnas del registro.
- Para análisis con PowerShell:
Get-Content C:\compare.log | Where-Object { $_ -match "Lonely|Extra" } - Para comparar el recuento de archivos:
(Get-Content C:\compare.log).Count. - Para comparación automatizada: script programado que envíe las diferencias por correo.
Esta es la ruta detallada.
Método 3: Sincronizar después de la comparación
Para actuar sobre las diferencias.
- Después de la comparación, sincronice el origen con el destino:
robocopy "C:\Source" "D:\Target" /e /copy:DAT /xo- /xo: excluir los más antiguos (no sobrescribir los más recientes en el destino).
- Para espejo (eliminar los adicionales del destino):
robocopy "C:\Source" "D:\Target" /mirPrecaución: ¡elimina!
- Para sincronización bidireccional: no es nativo de robocopy. Use Microsoft SyncToy (heredado) o FreeFileSync (gratuito).
- Para verificación de copia de seguridad crónica: robocopy /l programado + informe por correo.
- Para tipos de archivo específicos:
robocopy ... *.docx /e /l. - Para patrones de exclusión:
/xf [pattern]excluye archivos,/xd [pattern]excluye directorios.
Esta es la ruta de sincronización.
Cómo verificar que la solución funcionó
- La salida de robocopy enumera los archivos que difieren entre el origen y el destino.
- El archivo de registro es legible.
- La comparación muestra las diferencias esperadas.
- Si se realiza la sincronización: las unidades coinciden.
Si nada de esto funciona
Si la salida no es clara: Opciones verbosas: /v muestra más detalle. Para comparación de contenido binario: robocopy compara tamaño + marca de tiempo + atributos de forma predeterminada. Para comparación a nivel de byte: fc /b file1 file2 (herramienta fc de Windows). Para gran cantidad de archivos: los archivos de registro pueden ser enormes. Use filtros específicos. Para unidades de red: lento. Espere o compare localmente primero. Para comparación de permisos: /copy:DATSO incluye seguridad. Para nombres de archivo Unicode: robocopy los admite. Para copias de seguridad basadas en deduplicación: se requieren herramientas especiales. Borg, Restic para comparación a nivel de fragmento.
Conclusión: robocopy "C:\Source" "D:\Target" /e /l /njh /njs solo para comparación. Dirección inversa para archivos que faltan en el origen. /log: para guardar el informe. Agregue /mir para sincronizar después.