Cómo encontrar o eliminar archivos con menos de X minutos de antigüedad en Linux

Contenidos

Bash Shell

Supongamos que acaba de ejecutar un script que se suponía que movía archivos o descargaba cosas, o cualquier otra cosa que involucre archivos, y después se da cuenta de que necesita averiguar qué archivos se acaban de crear y dónde. Y tal vez necesite eliminarlos.

Primero, querrá utilizar el comando de búsqueda para averiguar qué archivos se crearon y después utilizar el mmin argumento para especificar archivos de menos de x minutos. Si desea especificar solo archivos, puede utilizar el -type f argumento para buscar solo archivos.

Entonces, si desea verificar en la carpeta actual, incluidas las subcarpetas, los archivos creados en los últimos 5 minutos, puede utilizar el siguiente comando:

find ./ -type f -mmin -5

Para eliminar archivos podemos utilizar el -exec rm {} ; argumento, que es un poco confuso, pero simplemente le está diciendo al argumento ejecutivo que elimine los archivos.

Entonces, para quitar todos los archivos en la carpeta actual, incluidas las subcarpetas, creadas en los últimos 5 minutos, use este comando:

find ./ -type f -mmin -5 -exec rm {} ;

Si desea especificar archivos de más de X días en su lugar, puede usar el -mtime argumento: a modo de ejemplo, este comando eliminaría archivos con más de 10 días:

find ./ -type f -mtime +10 -exec rm {} ;

Mucho más fácil que mirar la página del manual.

Suscribite a nuestro Newsletter

No te enviaremos correo SPAM. Lo odiamos tanto como tú.