He encontrado el problema, te lo explico con un ejemplo.
Hoy estamos a 02-12-2008, y esto debería borrar todos los archivos que se hayan creado antes del 02-11-2008.
Si haces una traza con un archivo del dia 01-12.2008, no lo da por valido ya que el dia no es mayor que el de la fecha retrasada. Al final he puesto el codigo asi:
Código:
set fechaarch=%2
if %fechaarch:~1,4% LSS %5 ( GOTO BORRAR )
if %fechaarch:~1,4% GTR %5 ( GOTO MANTENER )
if %fechaarch:~1,4% EQU %5 (
if %fechaarch:~6,2% LSS %4 ( GOTO BORRAR )
if %fechaarch:~6,2% GTR %4 ( GOTO MANTENER )
if %fechaarch:~6,2% EQU %4 (
if %fechaarch:~9,2% LSS %3 ( GOTO BORRAR )
if %fechaarch:~9,2% GTR %3 ( GOTO MANTENER )
if %fechaarch:~9,2% EQU %3 ( GOTO MANTENER )
)
)
:BORRAR
ECHO Deleted ....... %2 ...... %1 >> log.txt
DEL %1
GOTO END
:MANTENER
ECHO OK ............ %2 ...... %1 >> log.txt
:END
Esto me borraria todos los archivos que tengan mas de un mes.
Un saludo.