Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Temas - jconnor

#1
Hola amigos, primero q todo saludarlos y felicitarlos pr el foro, se encuentran buenas cosas;
buscando y guiandome en el foro cree un programa para realizar un backup de una base de datos y ponerle como nombre la fecha en q se hace, en escencia lo q hace es comprimirlo con winzip y copiarlo a una ubicacion; el problema surge cuando necesito restaurar dicha base en una de prueba, todos los dias, creé el programa para restaurarla, entonces lo q hago es con el mismo codigo q le doy el nombre, identifico el backup creado y le resto 1 al dia, puesto q hago el backup a las 11pm todos los dias y lorestauro a la 1 am del siguiente dia, hasta ahi todo bien, el problema surge cuando la fecha es el primero del mes, puesto q como siempre le resto 1 al dia y cuando pongo el nombre en la parte del dia me queda 0!, cuando el primero cae en lunes, peor, porque le resto 3 y me da -2, no se q hacer, se q existe la variable date pero no se como restarle 1 para q me de la fecha anterior, espero q por favor me ayuden, aca esta el codigo de crear el backup:

Código (dos) [Seleccionar]
@ECHO OFF
CLS
ECHO.
ECHO     COPIA DE SEGURIDAD DE DATOS
ECHO.

set dia=
set mes=
set año=
set nombre=

for /f "tokens=1-3 delims=/ " %%a in ('date /t') do (set dia=%%a& set mes=%%b& set año=%%c)

set nombre=BOG%mes%%dia%

wzzip -P -r D:\LZHWEB\%nombre%.zip D:\bogota\bd\jord\*.*

ECHO.

set nombre=SER%mes%%dia%

wzzip -P -r D:\LZHWEB\%nombre%.zip D:\servicio\bd\jord\*.*


ECHO.
ECHO  PROCESO TERMINADO :
TIME


y el de restaurarlo:

Código (dos) [Seleccionar]
@ECHO OFF
CLS
ECHO.
ECHO     COPIA DE SEGURIDAD DE DATOS
ECHO.

set dia=
set mes=
set año=
set nombre=
set cont=

for /f "tokens=1-3 delims=/ " %%a in ('date /t') do (set dia=%%a& set mes=%%b& set año=%%c)

set cont=1

set /a dia=%dia%-%cont%


set nombre=BOG%mes%%dia%

cd \

d:

cd \

cd copiabog\bd\jord

del j*.d*

wzunzip -e -o C:\LZHWEB\%nombre%.zip d:\copiabog\bd\jord

ECHO.

set nombre=SER%mes%%dia%

cd \

cd copiaserv\bd\jord

del j*.d*

wzunzip -e -o C:\LZHWEB\%nombre%.zip d:\copiaserv\bd\jord

ECHO.
ECHO  PROCESO TERMINADO :
TIME

Gracias por la ayuda...