elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Entrar al Canal Oficial Telegram de elhacker.net


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  Problema borrar ficheros con batch
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Problema borrar ficheros con batch  (Leído 1,630 veces)
maiksix

Desconectado Desconectado

Mensajes: 5


Ver Perfil
Problema borrar ficheros con batch
« en: 4 Septiembre 2015, 19:29 pm »

Hola a todos,

tengo el siguiente fichero .bat

Código:
@echo off
@rem define logs path
set path=C:\Users\User\Desktop\LogsBorrar\

@rem define file name or pattern
set file=*.log

@rem define today date
set timestamp=%date%

@rem define the complete Path of the logs
set completePath=%path%%file%

@rem define an specific date
set tim= 20/08/15

@rem list the files to erase in completePath directory

for /f %%f in ('dir /t:w %completePath%') do (
echo.
echo %%f
if %tim% LSS %%f erase %%f
)
echo

pause

El objetivo es que borre todos los .log que sean más viejos que la fecha de la variable "tim", por eso leo con dir la fecha de los ficheros del directorio, pero como sólo leo la fecha no borra el fichero...

Alguna sugerencia para avanzar?

P.D: Conozco la existencia de forfiles pero no lo detecta windows, y aunque he encontrado como habilitarlo quiero aprender a hacer yo el código entero

Gracias amigos!


En línea

Eleкtro
Ex-Staff
*
Desconectado Desconectado

Mensajes: 9.788



Ver Perfil
Re: Problema borrar ficheros con batch
« Respuesta #1 en: 6 Septiembre 2015, 22:51 pm »

El objetivo es que borre todos los .log que sean más viejos que la fecha de la variable "tim", por eso leo con dir la fecha de los ficheros del directorio, pero como sólo leo la fecha no borra el fichero...

Alguna sugerencia para avanzar?

A esto te he dado una solución en tu otro post. No hagas doble post, está prohibido.


Citar
Conozco la existencia de forfiles pero no lo detecta windows, y aunque he encontrado como habilitarlo quiero aprender a hacer yo el código entero

¿Qué significa "no lo detecta Windows"?, ¿utilizas Windows XP o anteriores, o utilizas una versión modificada de Windows donde han capado el forfiles (ej. Windows 7 super chachi edition by megaman77)?.

No veo que diferencia de aprendizaje le ves a utilizar un comando u otro, no te ofendas, pero para hacer eso de "quiero aprender a hacer yo el código entero" entonces deberías usar ASM xD. Lo que intento decir es que es una bobada que pierdas el tiempo en Batch, si ya conoces una solución usando forfiles entonces ¿para que quieres perder tiempo complicándote con el comando DIR?, si en realidd no vas a aprender nada, un FOR /F no aporta nada en la programación, y si quieres otra solución con la que aprender entonces deberías empezar por olvidar Batch y elegir cualquier otro lenguaje con el que poder aprender algo útil.

Es solo un consejo.

Cierro el tema por doble post, si quieres responder a las preguntas que te hice aquí entonces hazlo en el otro post. :P

Saludos


« Última modificación: 6 Septiembre 2015, 22:54 pm por Eleкtro » En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines