Cómo eliminar archivos de más de 30 días en Linux

Cómo eliminar archivos de más de 30 días en Linux
“Este tutorial de Linux explica cómo eliminar archivos de más de 30 días. Después de leer este artículo, podrá eliminar archivos según la hora en que se crearon. Dado que todos los usuarios de Linux deben saber cómo encontrar y eliminar archivos según un momento específico (modificar/crear), este contenido está optimizado para principiantes y usuarios experimentados. Todos los ejemplos a continuación son válidos para todas las distribuciones de Linux.

Contents
  1. Eliminación de archivos de 30 días en Linux
  2. Conclusión

Todas las instrucciones incluidas en este documento contienen capturas de pantalla, lo que facilita que cualquier usuario de Linux las entienda y las aplique. "

Notar: Este artículo usa archivos de más de 30 días como ejemplo, pero puede cambiar la cantidad de días de 30 a cualquier número que desee.

Eliminación de archivos de 30 días en Linux

Para empezar, veamos cómo listar los archivos indicando su fecha usando el ls (Lista) seguido del comando -L bandera para lista larga y por ruta. En mi caso, el camino es el LinuxHintDirectory directorio ubicado en el directorio actual.

ls -l Directorio de sugerencias de Linux /

Como puede ver en la figura anterior, hay dos archivos y 2 directorios con más de 30 días. Puedes ver los archivos wpa.hash Y wp-config.phpY wpacan Y zmappa directorio telefónico.

El siguiente comando eliminará archivos (no directorios) en la ruta especificada (como se mencionó, mi ruta es LinuxHintDirectory ubicado debajo de la ruta actual).

Notar: En mi caso, estoy tratando con archivos creados por el usuario root. No se recomienda la eliminación masiva de archivos como root.

sudo find LinuxHintDirectory -type f -mtime +30 -delete

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

Como se puede ver en la imagen anterior, el archivo wpa.hash Y wp-config.php se eliminaron con éxito usando el comando descrito donde:

Transpiro: Este comando proporciona privilegios en caso de que los archivos que desea eliminar requieran privilegios de superusuario. Usar sudo al eliminar archivos no es la mejor opción; Solo lo usé para ejemplos.

encontrar:

LinuxHintDirectory: En los 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.

-el género: Este indicador de comando de búsqueda se utiliza para definir el tipo de archivo que desea eliminar (utilice un F para archivos ea D para directorios).

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

- Ahora: los -tiempo La bandera se utiliza para especificar que queremos buscar archivos en función de su fecha de creación o modificación. Este indicador debe ir seguido de un signo menos (-) y el número de días para los archivos creados/modificados después de la fecha especificada. O un signo más (+) seguido del número de días que los archivos se crearon o modificaron antes de hace X días.

+30: Como se mencionó anteriormente, el indicador -mtime debe ir seguido de la cantidad de días que queremos encontrar los archivos. En este caso, +30 especifica archivos creados hace más de 30 días; debe reemplazar el número con los días que desea establecer como parámetros.

-Borrar: Esta bandera le dice al comando de búsqueda que elimine archivos que coincidan con las banderas descritas anteriormente.

Por si acaso, quiero mostrar otro ejemplo que muestra una ruta con subdirectorios, como puede ver a continuación, donde el local LinuxHintDirectory está definido por el directorio de inicio del usuario.

sudo find ~/LinuxHintDirectory -type f -mtime +30 -delete

Ahora podemos ver en la captura de pantalla a continuación que la ubicación LinuxHintDirectory contiene los subdirectorios directorio 1 vacío, vacío Dir2, linuxhintdir3, Modelos, prueba, Y tocar.

Con base en las fechas que se enumeran a continuación, los únicos directorios elegibles para ser eliminados son linuxhintdir3, Modelos, prueba, Y tocar.

ls -l Directorio de sugerencias de Linux /

Ahora veamos qué sucede cuando reemplazas -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 cumplieron la condición antes de los 30 días, solo dos fueron eliminados: linuxhintdir3 Y Modelos. Esto se debe a que el comando anterior solo elimina directorios vacíos. Es posible eliminar directorios recursivamente usando el comando descrito anteriormente. Es por eso que ve errores en la última captura de pantalla, advirtiendo que los directorios que aparecen como no vacíos no se pueden eliminar.

Para eliminar directorios que contienen contenido, combinaremos el comando buscar con el comando rm ordenado. Primero, revisemos el linuxhintdir directorio para archivos internos y subdirectorios agregando el archivo -R bandera (recursivo) como se muestra a continuación.

ls -Rl linuxhintdir /

Como puede ver arriba, todos los archivos y directorios tienen más de 30 días. Por lo tanto, para eliminarlos todos, ejecuto el siguiente comando como se muestra a continuación.

sudo find ./linux/linuxhintdir -type d -mtime +30 -exec rm -rf {} ;

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

Ahora revisemos el directorio /opt recursivamente.

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

Puedes ver una secuencia completa a continuación. Como puede ver, hay dos directorios con más de 30 días (gvm y espectador del equipo). Ambos tienen archivos y subdirectorios. Borramos gvm y todo su contenido ejecutando el mismo comando usado anteriormente, donde solo cambiamos la ruta del archivo (ahora gvm).

sudo find gvm -type d -mtime +30 -exec rm -rf {} ;

Como puede ver, después de ejecutar el comando, solo el espectador del equipo el directorio permanece; gvm se ha 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 la práctica (use un entorno experimental o de prueba). Recuerda que el signo + significa "más que" mientras que el signo menos (-) significa "más nuevo que".

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

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Subir