Cómo encontrar todos los archivos anteriores a una fecha

Recientemente un cliente me pedía que eliminara todos sus correos anteriores al año 2015. Por suerte, con GNU/Linux, eso es algo muy sencillo 😀

GNU/Linux incorpora de serie el comando find, que nos permite encontrar archivos dependiendo de una o varias condiciones. Además, podemos indicar qué comando queremos ejecutar con cada uno de los resultados encontrados.

En nuestro caso, la forma más simple para encontrar los archivos anteriores a una fecha concreta es dar como referencia un archivo que ya tenga esa fecha, y que crearemos con el comando touch.

El código, para los impacientes, quedaría tal que:


touch -m -d "2008-01-01 00:00:01" /tmp/file
find ./ \( ! -newer /tmp/file \)

En el ejemplo creamos el archivo /tmp/file y le indicamos como fecha de creación el 1 de enero de 2008. Después, le decimos a find que encuentre todos los archivos cuya fecha no sea más nueva (posterior) a la fecha del archivo.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *