Comando ROBOCOPY.



Si bien muchos no saben sobre este comando muy útil y sumamente poderoso, que hay dentro de windows en sus versiones desde   Windows XP, Windows Vista, Windows 7, Windows Server 2003 y Windows Server 2008 y obviamente sus versiones mas nuevas también las contienen.

En pocos términos es un 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.

Hasta ahora ninguna aplicación  es capaz de ni siquiera acercarse a los resultados de ROBOCOPY.
El único inconveniente es que solo funciona mediante la línea de comandos, cualquier usuario con pocos conocimientos puede aprovechar  sus grandes  ventajas usándolo con las opciones correctas.
                                                                                                                   
Velocidad del proceso realizado :)

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



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 vacíos


ROBOCOPY ORIGEN DESTINO /MIRMIR
modo espejo, Copia de forma recursiva pero atencion todos los datos del destino seran eliminados dejando solo lo del 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.

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 todos los archivos que estén en destino los eliminara dejando solo lo de 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.

Algunos ejemplos prácticos.

%userprofile% que es una variable de entorno que sustituye el nombre de usuario, ya que en cada computadora este tiene un nombre distinto.

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\ /E /RH:2400-2459
Crea un respaldo completo de Mis documentos iniciándolo a las 12:00 pm.

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.


Algunos script para hacerlo mas fácil y cómodo :)

• Con un 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

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.
En 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%



No hay comentarios:

Publicar un comentario