Cómo eliminar archivos más antiguos que los 10 días mejores en Linux

Cómo eliminar archivos más antiguos que los 10 días mejores en Linux
"Este tutorial de Linux explica cómo eliminar archivos mayores de 30 días. Después de leer este artículo, podrá eliminar archivos de acuerdo con el momento en que fueron creados. Dado que todos los usuarios de Linux deben saber cómo encontrar y eliminar archivos de acuerdo con un MTIME específico (tiempo de modificación/creación), este contenido está optimizado tanto para usuarios nuevos como experimentados. Todos los ejemplos que se muestran a continuación son válidos para cada distribución de Linux.

Todas las instrucciones incluidas en este documento contienen capturas de pantalla, lo que facilita a cada usuario de Linux comprenderlas y aplicarlas."

Nota: Este artículo usa como archivos de ejemplo mayores de 30 días, pero puede cambiar el número de días reemplazando 30 con cualquier número que desee.

Eliminar archivos de 30 días en Linux

Para comenzar, veamos cómo enumerar archivos que muestran su fecha usando el LS (Lista) comando seguido de la -l bandera para un listado largo y por el camino. En mi caso, el camino es el Linuxhintdirectory directorio ubicado en el directorio actual.

ls -l linuxhintdirectory/

Como puede ver en la figura anterior, hay dos archivos y 2 directorios mayores de 30 días. Podemos ver archivos WPA.picadillo y wp-config.php, y wpascan y zmap directorios.

El siguiente comando eliminará archivos (sin directorios) en la ruta especificada (como se dice, mi ruta es Linuxhintdirectory ubicado debajo de la ruta actual).

Nota: En mi caso, estoy tratando con archivos creados por el usuario root. Eliminar archivos masivamente como no se recomienda root.

sudo encontrar linuxhintdirectory -type f -mtime +30 -delete

Nota: Puede reemplazar +30 con +x (el número es arbitrario dependiendo de sus necesidades) para encontrar archivos mayores que x. O -x para encontrar archivos más nuevos que x. Las diferencias son los símbolos más y menos.

Como puede ver en la imagen anterior, archivos WPA.picadillo y wp-config.php fueron eliminados con éxito utilizando el comando descrito donde:

sudo: Este comando otorga privilegios en el caso de los archivos que desea eliminar requiere privilegios de superusuario. Usar sudo al eliminar archivos no es la mejor opción; Lo usé solo para los ejemplos.

encontrar:

LinuxHintDirectory: En ejemplos anteriores, Linuxhintdirectory es el directorio donde se almacenan los archivos que quiero eliminar. Este campo debe reemplazarse con la ruta real a los archivos que desea eliminar.

-tipo: Este indicador de comandos Find se utiliza para definir el tipo de archivo que desea eliminar (use un F para archivos y un d para directorios).

F: Después de usar el indicador de tipo de tipo, la F, en este caso, se usó para especificar que queremos eliminar los archivos, excepto los directorios.

-Mtime: El -MITIA La bandera se usa para especificar que queremos encontrar archivos de acuerdo con su tiempo de creación o modificación. Este indicador debe ser seguido por un menos (-) y el número de días para los archivos creados/modificados después de la fecha especificada. O un símbolo más (+) seguido por el número de días creados o modificados más antiguos que hace x días.

+30: Como se dijo anteriormente, la bandera -mtime debe ser seguida por la cantidad de días según los cuales queremos encontrar archivos. En este caso, +30 especifica los archivos creados hace más de 30 días; Debe reemplazar el número con los días que desea definir como parámetros.

-borrar: Este indicador instruye el comando de búsqueda para eliminar archivos que coinciden con los indicadores descritos anteriormente.

Por si acaso, quiero mostrar otro ejemplo que muestra una ruta con subdirectorios, como puede ver a continuación, donde el local Linuxhintdirectory se define desde el directorio de inicio del usuario.

sudo Find ~/LinuxhintDirectory -Type F -Mtime +30 -delete

Ahora podemos ver en la captura de pantalla debajo de la ubicación de LinuxhintDirectory contiene subdirectorios vacía1, vacíaDir2, linuxhintdir3, Plantillas, prueba, y touchp.

De acuerdo con las fechas que se muestran a continuación, los únicos directorios elegibles que se eliminarán son linuxhintdir3, Plantillas, prueba, y touchp.

ls -l linuxhintdirectory/

Ahora veamos qué sucede cuando reemplaza -tipo F con -tipo D Para especificar directorios.

sudo Find ~/LinuxhintDirectory -Type D -Mtime +30 -delete

Como puede ver a continuación, de todos los directorios que coinciden con la condición de más de 30 días, solo se eliminaron dos: linuxhintdir3 y Plantillas. Esto se debe a que el comando anterior solo elimina los directorios vacíos. Puede 'eliminar directorios de recursiva utilizando el comando descrito anteriormente. Es por eso que ves errores en la última captura de pantalla, advirtiendo que no pudo eliminar los directorios listados no vacíos.

Para eliminar los directorios con contenido en el interior, combinaremos el comando finales con el RM dominio. Antes, revisemos el Linuxhintdir directorio para archivos internos y subdirectorios agregando el -Riñonal (Recursivo) Bandera como se muestra a continuación.

LS -RL Linuxhintdir/

Como puede ver anteriormente, todos los archivos y directorios son mayores de 30 días. Por lo tanto, para eliminarlos todos, ejecuto el siguiente comando como se muestra a continuación.

sudo encontrar ./Linux/Linuxhintdir -Type D -Mtime +30 -exec RM -RF \;

Como puede ver, el directorio linxhintdir no fue eliminado, pero todo su contenido fue eliminado. Como puede ver en la captura de pantalla a continuación, la razón detrás Linuxhintdir La persistencia es el directorio se creó hoy, pero contenía archivos antiguos.

Ahora revisemos el directorio /opt de recursiva.

Nota: Eliminé el directorio de Google antes de este paso.

A continuación puedes ver una secuencia completa. Como puede ver, hay dos directorios mayores de 30 días (GVM y visión de equipo). Ambos tienen archivos y subdirectorios. Eliminemos GVM y todo su contenido ejecutando el mismo comando utilizado anteriormente, donde solo cambiamos la ruta al archivo (ahora GVM).

sudo encontrar gvm -type d -mtime +30 -exec rm -rf \;

Como puede ver, después de ejecutar el comando, solo el visión de equipo el directorio permanece; GVM fue eliminado con éxito.

Conclusión

Como puede ver, eliminar archivos antes o después de una fecha específica es bastante simple. Cualquier usuario de Linux, independientemente del nivel de conocimiento, debe saber cómo encontrar y administrar archivos por fecha. Los comandos explicados en este tutorial son válidos para todas las distribuciones de Linux. Se recomienda aplicar los comandos anteriores para ganar práctica (use un entorno experimental o de prueba). Recuerde, el símbolo + significa "más que", mientras que el símbolo menos (-) significa "más nuevo que".

Espero que este artículo explicar cómo eliminar archivos mayores de 30 días en Linux haya sido útil. Sigue siguiéndonos para obtener más tutoriales profesionales.