Autor Tema: copias de seguridad desde un fichero bat (SOLUCIONADO)  (Leído 10439 veces)

Desconectado Pepe Casado

  • Member
  • ***
  • Mensajes: 207
copias de seguridad desde un fichero bat (SOLUCIONADO)
« en: 08 de Junio de 2007, 11:33:39 am »
Hola, no sé si me dirijo al foro adecuado pero el problema que tengo es éste; deseo hacer un fichero .bat que me permita hacer una copia de seguridad de todos los archivos de "C:\datos\*.*"  a un pendrive "G:\datos" cosa que resulta fácil mediante el comando xcopy; pero lo que no sé es que instrucciónes añadir al fichero .bat para, a continuación, cambiar el nombre de "G:\datos" por otro que incluya la fecha del día, es decir  "G:\datos08062007".

Gracias.


Desconectado Mr_X

  • Iniciado
  • *****
  • Mensajes: 2635
Re: puntobat
« Respuesta #1 en: 08 de Junio de 2007, 05:44:22 pm »
¿Algo como esto?

Código: [Seleccionar]
@echo off
for /f "tokens=2 delims= " %%A IN ('DATE /T') do xcopy /e C:\DATOS\*.* "G:\DATOS-%%A\*.*"
"... I'll wait I sow the seed, I set the scene and I watch the world go by..."

Desconectado Pepe Casado

  • Member
  • ***
  • Mensajes: 207
Re: puntobat
« Respuesta #2 en: 08 de Junio de 2007, 08:55:15 pm »
Muchas gracias por tu contestación  pero no me funciona; cuando ejecuto el .bat que he creado copiando tus instrucciones, no da ningún error pero tampoco hace nada; como cosa curiosa puedo decirte que he eliminado el comando Echo off y lo he vuelto a ejecutar y el resultado que aparece en la pantalla es la segunda línea del .bat pero sin uno de los dos % que lleva la A en el final la instrucción:


Desconectado Mr_X

  • Iniciado
  • *****
  • Mensajes: 2635
Re: puntobat
« Respuesta #3 en: 08 de Junio de 2007, 09:09:45 pm »
¿Seguro que no hace nada? Pega aquí la salida del comando:

Código: [Seleccionar]
date /t
"... I'll wait I sow the seed, I set the scene and I watch the world go by..."

Desconectado Pepe Casado

  • Member
  • ***
  • Mensajes: 207
Re: puntobat
« Respuesta #4 en: 09 de Junio de 2007, 11:43:10 am »
date /t
for /f "tokens=2 delims= " %%A IN ('DATE /T') do xcopy /e C:\DATOS\*.* "G:\DATOS-%A\*.*"
   He pegado la salida que aparece en pantalla a continuación de date /t tal y como entiendo que me decías; como ves la diferencia entre la instrucción que se ejecuta y su resultado es que al final aparece G:\DATOS-%A en vez de G:\DATOS-%%A.

   Tambien he ejecutado el conjunto:   date /t for /f "tok.....  etc. etc.   y se queda el sistema operativo parado con el cursor a  la espera, y si doy INTRO empieza una copia buena al subdirectorio "G:\DATOS\sistema" para a continuación iniciar otra copia en el  subdirectorio llamado  "G:\DATOS\la";        en resumen se obtienen 2 copias iguales en esos 2 subdirectorios pero ninguno incluye la fecha.    Gracias.

     


Desconectado Mr_X

  • Iniciado
  • *****
  • Mensajes: 2635
Re: puntobat
« Respuesta #5 en: 09 de Junio de 2007, 08:35:12 pm »
Te pedía la salida (únicamente) del comando DATE /T para ver como aparece en pantalla la fecha porque por ahí está el problema...

Prueba con este:

Código: [Seleccionar]
@echo off
for /f "tokens=1,2,3 delims=/" %%A IN ('DATE /T') do xcopy "C:\DATOS\*.*" "G:\DATOS-%%A%%B%%C\*.*" /E /Y
"... I'll wait I sow the seed, I set the scene and I watch the world go by..."

Desconectado Pepe Casado

  • Member
  • ***
  • Mensajes: 207
Re: puntobat
« Respuesta #6 en: 10 de Junio de 2007, 11:10:36 am »
   Discúlpame, no te había entendido: La respuesta al comando DATE /T es la fecha del día con el formato dd/mm/aaaa.   
   Si ejecuto el .bat con las cambios que has hecho ocurre lo siguiente:   
1.- el cursor parpadea (supongo que pidiendo la fecha, cosa que no debía hacer puesto que debe tomar la fecha del sistema)     
2.- Introduzco la fecha con el formato anteriormente pedido dd/mm/aaaa.   
3.- Se inicia la copia que finaliza con el mensaje: "Error de creación de archivo; el nombre de archivo, dir o etiq. del volumen no es válido.  No se puede crear el dir: G:\DATOS\Escriba la nueva fecha: (dd-mm-aa)  0 archivos copiados".
 
   No obstante en G: aparece un directorio con el nombre "G:\DATOS\El sistema no puede aceptar la fecha que escribió" pero con los 144 archivos de los que consta la copia de seguridad corrrectamente copiados.     Gracias de nuevo.

Desconectado Mr_X

  • Iniciado
  • *****
  • Mensajes: 2635
Re: puntobat
« Respuesta #7 en: 10 de Junio de 2007, 06:46:36 pm »
Raro, no te debería de pedir la fecha. A mí me funciona correctamente en mi máquina (XP)... Revisa que lo tengas bien escrito...
"... I'll wait I sow the seed, I set the scene and I watch the world go by..."

Desconectado Lector

  • Member
  • ***
  • Mensajes: 451
Re: puntobat
« Respuesta #8 en: 10 de Junio de 2007, 08:57:04 pm »
Hola!  :-)

Solo por comentar... Mr_X, el primer bat que le apuntaste a mi tampoco me habia funcionado pero este ultimo sí, hizo exactamente lo que pide Pepe casado.

Lo unico, que para que se lea mejor la fecha le agregue un guion entre los ...%%A-%%B-%%C\...

P.D.: Mr_X podría apuntarme algun tutorial o algun sitio en el que pueda leer algo sobre el comando (o argumento o lo que sea  :???:) tokens? Me interesa ver si lo puedo incluir en un bat que utilizo yo pero no entiendo como usarlo.

Gracias y disculpa por la intromisión. ;-)
"...cuando las cosas salen como no las espero, la vida te hace más guerrero..."

I say no more & [LogOut].  :cool:

Desconectado Mr_X

  • Iniciado
  • *****
  • Mensajes: 2635
Re: puntobat
« Respuesta #9 en: 10 de Junio de 2007, 09:52:27 pm »
Solo por comentar... Mr_X, el primer bat que le apuntaste a mi tampoco me habia funcionado pero este ultimo sí, hizo exactamente lo que pide Pepe casado.

P.D.: Mr_X podría apuntarme algun tutorial o algun sitio en el que pueda leer algo sobre el comando (o argumento o lo que sea  :???:) tokens? Me interesa ver si lo puedo incluir en un bat que utilizo yo pero no entiendo como usarlo.

Sí, el primer ejemplo que puse lo hice para un Windows 2000, por eso era que en XP no funcionaba... Gracias por confirmar que este nuevo sí funciona ;-)

Para lo de los 'tokens', mira aquí (en inglés)...

Saludos
"... I'll wait I sow the seed, I set the scene and I watch the world go by..."

 

Aviso Legal | Política de Privacidad | Política de Cookies

el contenido de la web se rige bajo licencia
Creative Commons License