Ms-Dos - Ayuda con un programa BAT por favor!!

 
Vista:

Ayuda con un programa BAT por favor!!

Publicado por Eukeny (9 intervenciones) el 19/08/2009 16:48:05
Hola Necesto crear un programa en Batch que me respalde un directorio de la maquina con la fecha actual y que le agregue al nombre de la carpeta un numero consecutivo (-1,-2,-3.. etc) por cada vez que se ejecute el programa desde el escritorio..

He logrado respaldar la informacion de cualquier directorio en la maquina a una carpeta en C: con el nombre en la carpeta y al final de este -1, -2, pero no he logrado hacerlo tantas veces como se ejecute el archivo en batch.. solo lo hace 2 veces.. si alguien sabe como hacerlo, mucho le agradeceria el tip.. Muchas Gracias!!!

Este es mi codigo hasta ahora:

@ECHO OFF
@ECHO *** RESPALDANDO INFORMACION DEL EQUIPO ***

SET FOLDER=%date:~0,2%-%date:~3,2%-%date:~6,4%
SET BACKUPCMD=XCOPY /S /C /D /E /H /I /R /Y

SET i=1
IF EXIST "C:RespSist_"%FOLDER%-%i%. (set /a i=i+1)

MKDIR "C:RespSist_"%FOLDER%-%i%
MKDIR "C:RespSist_%FOLDER%-%i%Mis Documentos"
MKDIR "C:RespSist_%FOLDER%-%i%Escritorio"

%BACKUPCMD% "C:Documents and settingsUsuario1Mis Documentos". "C:RespSist_%FOLDER%-%i%Mis Documentos"

%BACKUPCMD% "C:Documents and settingsUsuario1Escritorio". "C:RespSist_%FOLDER%-%i%Escritorio"
goto salir

ELSE
MKDIR "C:RespSist_"%FOLDER%-%i%
MKDIR "C:RespSist_%FOLDER%-%i%Mis Documentos"
MKDIR "C:RespSist_%FOLDER%-%i%Escritorio"

%BACKUPCMD% "C:Documents and settingsUsuario1Mis Documentos". "C:RespSist_%FOLDER%-%i%Mis Documentos"

%BACKUPCMD% "C:Documents and settingsUsuario1Escritorio". "C:RespSist_%FOLDER%-%i%Escritorio"

:salir
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Ayuda con un programa BAT por favor!!

Publicado por Antoni Masana (295 intervenciones) el 20/08/2009 06:27:30
Solo tienes que realizar una pequeña modificacion

@ECHO OFF
@ECHO *** RESPALDANDO INFORMACION DEL EQUIPO ***

SET i=0
SET FOLDER=%date:~0,2%-%date:~3,2%-%date:~6,4%
SET BACKUPCMD=XCOPY /S /C /D /E /H /I /R /Y

:Suma
SET /a i=i+1
IF EXIST "C:\RespSist_"%FOLDER%-%i%. GOTO Suma

...

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Ayuda con un programa BAT por favor!!

Publicado por Eukeny (7 intervenciones) el 20/08/2009 07:23:25
Antoni, es usted un genio!!!...

He probado la corrección y me ha funcionado de maravilla... estare en contacto con usted, por si me atoro con algo mas, pues recien inicio en este tipo de programación..

ya que en la segunda fase tendre que ir conservando los dos ultimos respaldos en una carpeta adyacente a la de los respaldos anteriores,...

Muchas gracias..
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Ayuda con un programa BAT por favor!!

Publicado por Eukeny (9 intervenciones) el 24/08/2009 18:59:14
Hola reciente mente hice un codigo que respaldara ciertos directorios de la maquina con numeracion consecutiva.. mismo que usted me hizo favor de corregir ;D...

Lo que ahora deseo es que despues del tercer respaldo me borre siempre el primero.. dejandome solo las 2 ultimas carpetas...

Es decir:

1ra ejecucion
=> C: espaldo1

2da ejecucion
=> C: espaldo1
=> C: espaldo2

3ra ejecucion <----- A partir d aki db borrar siempre el anterior dejando siempre los 2
ultimos como sigue:
=> C: espaldo2
=> C: espaldo3

4ta ejecucion
=> C: espaldo3
=> C: espaldo4
..
.
Etc.......

******************** Este s el codigo con sus correciones Sr Antoni ********************
@ECHO OFF
@ECHO *** RESPALDANDO INFORMACION DEL EQUIPO ***

SET FOLDER=%date:~0,2%-%date:~3,2%-%date:~6,4%
SET BACKUPCMD=XCOPY /S /C /D /E /H /I /R /Y
SET i=0

:suma
set /a i=i+1
******************** Aqui intento esto, para borrar como necesito ********************
IF EXIST "C:RespSist_"%FOLDER%-%2%
SET i=0
set /a i=i+1
RD /q /s "C:RespSist_"%FOLDER%-%i%

IF EXIST "C:RespSist_"%FOLDER%-%i%. goto suma

MKDIR "C:RespSist_"%FOLDER%-%i%
MKDIR "C:RespSist_%FOLDER%-%i%Mis Documentos"
MKDIR "C:RespSist_%FOLDER%-%i%Escritorio"
%BACKUPCMD% "C:Documents and settingsUsuario1Mis Documentos". "C:RespSist_%FOLDER%-%i%Mis Documentos"
%BACKUPCMD% "C:Documents and settingsUsuario1Escritorio". "C:RespSist_%FOLDER%-%i%Escritorio"
goto salir

:salir
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar