Jueves, Diciembre 02, 2021

Buscar los archivos modificados en un intervalo de tiempo con find

Find es uno de los comandos más utilizados en sistemas Unix-like para localizar archivos dentro de su estructura de directorios. En GNU/Linux nos lo encontramos formando parte del paquete findutils.

Generalmente esas búsquedas las hace siguiendo unos criterios especificados por el usuario. En esta ocasión, vamos a hacer que nos muestre aquellos archivos que han sido modificados, en un periodo de tiempo determinado.

  • Si queremos saber los archivos y directorios que se han modificado desde el último día podemos ejecutar:
find -mtime -1
  • Desde hace una semana:
find -mtime -7
  • Podemos buscar algo más cercano, en este caso por minutos (los últimos 120? en el ejemplo):
find -mmin -120
  • O todo lo contrario…vamos a buscar lo que se cambió hace más de 30 días:
find -mtime +30 -daystart
  • Para no volvernos locos, vamos a concretar algo más. Entre 30 y 40 días:
find -mtime +30 -mtime -40 -daystart
  • La búsqueda se puede dirigir hacia un directorio en concreto. Por defecto de forma recursiva:
find /home/replicante/Documentos -mtime -2
  • O bien estableciendo un nivel de profundidad determinado con -maxdepth:
find -maxdepth 1 /home/replicante/Documentos -mtime -2
  • También podemos pasar la salida a un archivo de texto para estudiarla con mayor comodidad:
find -mtime -1 > archivo.txt
  • Y especificar que tan solo se muestren los archivos en los resultados (nada de directorios o enlaces simbólicos). Para ello añadimos la expresión -type f, en cualquiera de los comandos mencionados anteriormente. Sería algo así:
find -type f -mtime -1
  • Un vistazo al extenso manual de find:
man find

nos va a descubrir múltiples opciones y parámetros, que podemos combinar con estas búsquedas de tipo temporal.

  • Así vemos que podemos añadirle un filtrado por nombre (-name) con expresiones regulares. En este último ejemplo buscamos los archivos de tipo MID que han sido modificados en los últimos 7 días.
find -mtime -7 -name "*.MID"
  • O bien jugar con el tamaño (-size):
find -mtime -7 -size +25M

Similar a -mtime existen otras funciones, que determinan la última vez que se abrió un archivo (atime) o bien fue creado (ctime). Supongo que tendremos ocasión de echarles un vistazo en cualquier otro momento.

 

Fuente: lamiradadelreplicante

¿Quién está en línea?

Hay 163 invitados y ningún miembro en línea

Contador de Visitas

12599081
Hoy Hoy 2867
Ayer Ayer 4707
Esta semana Esta semana 16373
Este mes Este mes 7574
Total de Visitas Total de Visitas 12599081

Día con más
visitantes

11-10-2021 : 5280

Gracias por su visita