Alejandro Arco Alejandro Arco

Borrar ficheros por fecha en linux

linux 3 Comentarios »

linux - Borrar ficheros por fecha en linuxEn algunas ocasiones deseamos borrar ficheros antiguos, para ello basta con conocer la potencia del comando find (ver ayuda con man find), y concatenar la operación que deseamos realizar con -exec, en este caso borrar ficheros por fecha.

El comando find nos permite ejecutar cualquier otro comando, reemplazando {} por cada linea que devuelva el comando find.

En el ejemplo que muestro a continuación voy a borrar archivos por fecha, con una antiguedad mayor a 180 días desde la fecha actual (el número de días variará según las necesidades de cada uno).

# Borrar ficheros por fecha con más de 180 días de antiguedad
find /home/vmail -name "*mail*" -atime +180 -type f -print -exec rm {} \;

Además, en el ejemplo anterior se eliminan todos los ficheros (no directorios) que esten contenidos dentro de la carpeta “/home/vmail” (incluidas subcarpetas) que contengan la cadena “mail” en el nombre del fichero y que tengan una antiguedad superior a 180 días.

Si tenéis alguna duda no dudéis en dejarme un comentario.

rm ‘Error: Too many arguments’

linux 2 Comentarios »

Too many argumentsLa consola de Linux alguna vez nos ha devuelto a todos por pantalla el error Too many arguments” al intentar realizar un borrado de muchos ficheros. Para solucionar este problema se puede crear un shell script que realice un borrado recursivo, usar tuberías (pipe) usando el comando find y concatenando la tubería junto con el comando xargs entre otras opciones disponibles.

Una de las soluciones más sencilla y eficaz que he encontrado hasta ahora para borrar ficheros en grandes cantidades es usar el comando de ejemplo que muestro a continuación.

Ejemplo para borrar los logs de la carpeta actual (en la que nos encontramos) en una distribución Debian:

find . -name "*.log" -print -exec rm {} \;

Usando este comando no he vuelto a recibir el error Too many arguments” por realizar un borrado de ficheros si el número es muy elevado.

Fuente: Alejandro Arco

Publicado por Alejandro Arco.Gracias WordPress & N.Design Studio.