Cómo eliminar archivos de más de X horas

Resuelto Tom Feiner asked hace 15 años • 9 respuestas

Estoy escribiendo un script bash que necesita eliminar archivos antiguos.

Actualmente se implementa usando:

find $LOCATION -name $REQUIRED_FILES -type f -mtime +1 -delete

Esto eliminará los archivos que tengan más de 1 día.

Sin embargo, ¿qué pasa si necesito una resolución más precisa de ese día, digamos unas 6 horas? ¿Existe una forma agradable y limpia de hacerlo, como usar find y -mtime?

Tom Feiner avatar Oct 30 '08 15:10 Tom Feiner
Aceptado

¿Tienes findla -mminopción? Eso puede permitirle probar la cantidad de minutos desde la última modificación:

find $LOCATION -name $REQUIRED_FILES -type f -mmin +360 -delete

O tal vez considere usar tmpwatchpara hacer el mismo trabajo. phjr también lo recomendó tmpreaperen los comentarios.

Paul Dixon avatar Oct 30 '2008 08:10 Paul Dixon

Este es el enfoque que funcionó para mí (y no veo que se use arriba)

$ find /path/to/the/folder -name '*.*' -mmin +59 -delete > /dev/null

eliminando todos los archivos de más de 59 minutos dejando las carpetas intactas.

Axel Ronsin avatar Feb 20 '2018 14:02 Axel Ronsin