Desde Linux es posible buscar y borrar fichero según la fecha indicada.
Como ya sabemos, con el comando find, podemos buscar ficheros según un criterio establecido.
A continuación disponéis de algunos ejemplos de uso del comando find sobre Linux:
Como podéis ver, con el comando find es posible realizar infinidad de tareas administrativas.
Así que distintas formas de borrar ficheros por fecha, serían algunos ejemplos mas de uso del comando find.
Linux: Borrar ficheros por fecha: Parámetro -exec rm
Ejemplo:
find /SYSADMIT/* -mtime +15 -type f -exec rm -f {} \;
Busca a partir de la ruta: /SYSADMIT/* todos los ficheros (parámetro -type f) que no han sido modificados hace mas de 15 días (-mtime +15) y ejecuta el comando rm (parámetro -exec rm -f {} \).
Como podéis ver en el ejemplo, el comando rm, lo acompaño del parámetro -f, para evitar que pida confirmación al eliminar cada fichero.
Linux: Borrar ficheros por fecha: Ver ficheros que serán eliminados
Para ver los ficheros que serian borrados antes de borrarlos, bastaría con ejecutar:
find /SYSADMIT/* -mtime +15 -type f -print
Busca a partir de la ruta: /SYSADMIT/* todos los ficheros (parámetro -type f) que no han sido modificados hace mas de 15 días (-mtime +15) y los muestra por pantalla (parámetro -print).
Sería buena idea ejecutar primero el comando que lista los ficheros antes de ejecutar el comando que los elimina.
Linux: Borrar ficheros por fecha: Parámetro -delete
Finalmente comentar que existen distribuciones de Linux que integran el comando find con el parámetro -delete.
El comando find con el parámetro -delete, permite eliminar los ficheros sin necesidad de ejecutar el parámetro: -exec rm {} \;
Ejemplo:
find /SYSADMIT/* -mtime +15 -type f -delete
Busca a partir de la ruta: /SYSADMIT/*
todos los ficheros (parámetro -type f) que no han sido modificados hace
mas de 15 días (-mtime +15) y los borra (parámetro
-delete).
Si ejecutamos el comando find con el parámetro --help, podremos ver si permite el parámetro -delete:
Linux: Borrar ficheros por fecha: Parámetro -newermt
Para finalizar los ejemplos, aquí tenemos otro donde podemos borrar ficheros mas nuevos que una fecha especificada.
Para ello, utilizaremos el parámetro: -newermt
Ejemplo:
find /SYSADMIT/* -type f -not -newermt "AAAA:MM:DD HH:MI:SS" -delete
AAAA = Año
MM = Mes
DD = Día
HH = Hora
MI = Minuto
SS = Segundo
Se realizará la búsqueda a partir del directorio: /SYSADMIT/
AAAA = Año
MM = Mes
DD = Día
HH = Hora
MI = Minuto
SS = Segundo
Se realizará la búsqueda a partir del directorio: /SYSADMIT/
No hay comentarios:
Publicar un comentario