Tip: Borrando archivos antiguos en Linux con find

Marzo 4, 2007

ConsolaHace poco tuve que borrar los archivos que tuvieran mas de 40 días de antiguedad en un servidor linux. Esto se puede hacer fácilmente con el comando find, en una sola línea como nos gusta a algunos, sólo hay que ejecutar lo siguiente en la consola:

/usr/bin/find < DIRECTORIO > -mtime +< NUMERO_DE_DIAS > -exec rm -f {} \;

Sólo tenemos que sustituir los parámetros < DIRECTORIO > y < NUMERO_DE_DIAS >. Adicionalmente podríamos agregar la opción -maxdepth < nivel > en caso de que el directorio tuviera subdirectorios, con < nivel > le indicamos cuanto queremos que profundice en ellos, por ejemplo si no queremos entrar en subdirectorios < nivel > sería 1.

Algunos ejemplos de su uso:

/usr/bin/find /home/jcab/tutoriales/ -maxdepth 1 -mtime +100 -exec rm -f {} \;

Si quiero medir el tiempo en minutos en lugar de días utilizo -mmin en lugar de -mtime:

/usr/bin/find /tmp/ -maxdepth 2 -mmin +45 -exec rm -f {} \;

« Anterior