none
Script para programar la copia de una carpeta RRS feed

  • Pregunta

  •  

    Hola a todos, espero me puedan ayudar.

     

    Quisiera cómo podría hacer para poder programar la copia diaria y a una determinada hora de una carpeta con todos sus archivos y subcarpetas desde un servidor windows 2003 a otro windows 2003.

     

    Me dijeron que tendría que usar un script, pero no sé cómo hacerlo ni donde colocarlo.

     

    Gracias por sus aportes.

    viernes, 9 de enero de 2009 20:45

Respuestas

  • De nada, para eso estamos...
    Para copiar directorio y sus subdirectorios debería ser este:
    xcopy /e ruta_de_la_carpeta ruta_de_destino.

    Copia  árboles de archivos y directorios.

    XCOPY origen [destino] [/A | /M] [/D[:fecha]] [/P] [/S [/E]] [/V] [/W]
                           [/C] [/I] [/Q] [/F] [/L] [/G] [/H] [/R] [/T] [/U]
                           [/K] [/N] [/O] [/X] [/Y] [/-Y] [/Z]
                           [/EXCLUDE:archivo1[+archivo2][+archivo3]...]

     origen   Especifica el archivo(s) que hay que copiar.
     destino  Especifica la ubicación y/o nombres de archivos nuevos.
     /A       Copia sólo archivos con el atributo del archivo establecido,
              no cambia el atributo.
     /M       Copia sólo archivos con el atributo del archivo establecido,
              desactiva los atributos del archivo.
     /D:m-d-y Copia archivos cambiados durante o despu‚s de la fecha.
              Si no se da una fecha, copia sólo aquellos archivos cuya
              fecha de origen es más nueva que la fecha de origen.
     /EXCLUDE:archivo1[+archivo2][+archivo3]...
              Especifica una lista de archivos que contienen cadenas. Los
              archivos deben tener una cadena por línea.
              Cuando cualquiera de las cadenas que coincidan con cualquier
              parte de la ruta absoluta del archivo que se debe copiar,
              ese archivo se excluirá  de ser copiado. Por ejemplo, el
              especificar una cadena como \obj\ u .obj excluirá  todos
              los archivos por debajo del directorio obj o todos los
              archivos con la extensión obj respectivamente.
     /P       Pregunta antes de crear cada archivo de destino.
     /S       Copia directorios y subdirectorios ,exceptuando los vacíos.
     /E       Copia directorios y subdirectorios, incluyendo los vacíos.
              Igual que /S /E. Puede ser usado para modificar /T.
     /V       Verifica el tamaño de cada archivo nuevo.
     /W       Pide que se presione una tecla antes de copiar.
     /C       Continua copiando incluso si ocurren errores.
     /I       Si el destino no existe y hay que copiar m s de un archivo,
              se asume que el destino debe ser un directorio.
     /Q       No muestra nombres de archivos mientras copia.
     /F       Muestra todo el origen y el destino de los nombres de
              archivo mientras se copian.
     /L       Muestra los archivos que ser n copiados.
     /G       Permite la copia de archivos destino cifrados para el destino
              que no es compatible con el cifrado.
     /H       Copia archivos ocultos y también archivos del sistema.
     /R       Sobrescribe archivos de sólo-lectura.
     /T       Crea una estructura de directorio, pero no copia archivos. No
              incluye directorios o subdirectorios vacíos. /T /E incluye
              directorios y subdirectorios vacíos.
     /U       Copia sólo archivos que ya existen en el destino.
     /K       Copia atributos. Xcopy normal, restablecer  atributos
              de sólo lectura.
     /N       Copia utilizando los nombres cortos generados.
     /O       Copia archivos de propiedad e información ACL.
     /X       Copia archivos de configuración de auditoría (implica /O).
     /Y       Suprime la pregunta de confirmación para sobrescribir un archivo
              de destino existente.
     /-Y      Pregunta por la confirmación de sobrescritura de un archivo
              de destino existente.
     /Z       Copia archivos de red en modo reiniciable.

    El modificador /Y debe ser preestablecido en la variable de entorno COPYCMD.
    Esto se puede sobrescribir con /-Y en la línea del comando.

    Como puedes ver, tienes infinidad de opciones para copiar directorios y sus subdirectorios. En tu caso, puedes utilizar los parametros /S si quieres excluir los directorios vacíos o /E si quieres incluirlos. Echale un vistazo a todos los parámetros que te he listado arriba, tal vez más de uno te puede resultar útil...

    Si mis mensajes han respondido tu duda, no olvides marcarlos como respondido para que sirvan como referencia a otros usuarios con el mismo problema!

    Un saludo
    lunes, 19 de enero de 2009 19:49
  •  

    Tambien, si quieres, podrias usar robocopy, es una utilidad de sysinternals bastante maja. Ademas en su version GUI es bastante intuitiva y con muchas opciones. Ya me diras que te parece. .
    martes, 27 de enero de 2009 9:33

Todas las respuestas

  • Hola,

    Puedes crearte un sencillo BAT con el comando de copy ruta_de_la_carpeta\*.*  ruta_de_destino
    y luego lo programas desde tareas programadas... No olvides programar la tarea para que se ejecute como administrador.

    Recomiendo crear una unidad de red para el destino!

    Un saludo
    viernes, 16 de enero de 2009 15:10
  •  

    Hola Dani, gracias por reaponder, estoy probando el bat que me dijiste, pero sólo me copia archivos dentro de esa carpeta, mas no las subcarpetas ni los archivos que se encuentran dentro de esas subcarpetas, por que sucede esto?

     

    Saludos

    lunes, 19 de enero de 2009 17:56
  • De nada, para eso estamos...
    Para copiar directorio y sus subdirectorios debería ser este:
    xcopy /e ruta_de_la_carpeta ruta_de_destino.

    Copia  árboles de archivos y directorios.

    XCOPY origen [destino] [/A | /M] [/D[:fecha]] [/P] [/S [/E]] [/V] [/W]
                           [/C] [/I] [/Q] [/F] [/L] [/G] [/H] [/R] [/T] [/U]
                           [/K] [/N] [/O] [/X] [/Y] [/-Y] [/Z]
                           [/EXCLUDE:archivo1[+archivo2][+archivo3]...]

     origen   Especifica el archivo(s) que hay que copiar.
     destino  Especifica la ubicación y/o nombres de archivos nuevos.
     /A       Copia sólo archivos con el atributo del archivo establecido,
              no cambia el atributo.
     /M       Copia sólo archivos con el atributo del archivo establecido,
              desactiva los atributos del archivo.
     /D:m-d-y Copia archivos cambiados durante o despu‚s de la fecha.
              Si no se da una fecha, copia sólo aquellos archivos cuya
              fecha de origen es más nueva que la fecha de origen.
     /EXCLUDE:archivo1[+archivo2][+archivo3]...
              Especifica una lista de archivos que contienen cadenas. Los
              archivos deben tener una cadena por línea.
              Cuando cualquiera de las cadenas que coincidan con cualquier
              parte de la ruta absoluta del archivo que se debe copiar,
              ese archivo se excluirá  de ser copiado. Por ejemplo, el
              especificar una cadena como \obj\ u .obj excluirá  todos
              los archivos por debajo del directorio obj o todos los
              archivos con la extensión obj respectivamente.
     /P       Pregunta antes de crear cada archivo de destino.
     /S       Copia directorios y subdirectorios ,exceptuando los vacíos.
     /E       Copia directorios y subdirectorios, incluyendo los vacíos.
              Igual que /S /E. Puede ser usado para modificar /T.
     /V       Verifica el tamaño de cada archivo nuevo.
     /W       Pide que se presione una tecla antes de copiar.
     /C       Continua copiando incluso si ocurren errores.
     /I       Si el destino no existe y hay que copiar m s de un archivo,
              se asume que el destino debe ser un directorio.
     /Q       No muestra nombres de archivos mientras copia.
     /F       Muestra todo el origen y el destino de los nombres de
              archivo mientras se copian.
     /L       Muestra los archivos que ser n copiados.
     /G       Permite la copia de archivos destino cifrados para el destino
              que no es compatible con el cifrado.
     /H       Copia archivos ocultos y también archivos del sistema.
     /R       Sobrescribe archivos de sólo-lectura.
     /T       Crea una estructura de directorio, pero no copia archivos. No
              incluye directorios o subdirectorios vacíos. /T /E incluye
              directorios y subdirectorios vacíos.
     /U       Copia sólo archivos que ya existen en el destino.
     /K       Copia atributos. Xcopy normal, restablecer  atributos
              de sólo lectura.
     /N       Copia utilizando los nombres cortos generados.
     /O       Copia archivos de propiedad e información ACL.
     /X       Copia archivos de configuración de auditoría (implica /O).
     /Y       Suprime la pregunta de confirmación para sobrescribir un archivo
              de destino existente.
     /-Y      Pregunta por la confirmación de sobrescritura de un archivo
              de destino existente.
     /Z       Copia archivos de red en modo reiniciable.

    El modificador /Y debe ser preestablecido en la variable de entorno COPYCMD.
    Esto se puede sobrescribir con /-Y en la línea del comando.

    Como puedes ver, tienes infinidad de opciones para copiar directorios y sus subdirectorios. En tu caso, puedes utilizar los parametros /S si quieres excluir los directorios vacíos o /E si quieres incluirlos. Echale un vistazo a todos los parámetros que te he listado arriba, tal vez más de uno te puede resultar útil...

    Si mis mensajes han respondido tu duda, no olvides marcarlos como respondido para que sirvan como referencia a otros usuarios con el mismo problema!

    Un saludo
    lunes, 19 de enero de 2009 19:49
  •  

    Tambien, si quieres, podrias usar robocopy, es una utilidad de sysinternals bastante maja. Ademas en su version GUI es bastante intuitiva y con muchas opciones. Ya me diras que te parece. .
    martes, 27 de enero de 2009 9:33