GNU/Linux >> Tutoriales Linux >  >> Linux

Cómo encontrar archivos basados ​​en la marca de tiempo en Linux

El comando de búsqueda en Linux se usa para buscar archivos y carpetas en base a diferentes parámetros. Estos parámetros pueden ser el nombre de archivo , tamaño , tipo de archivo , etc.

[ También te puede interesar:Cómo encontrar archivos que contengan una cadena de texto específica en Linux ]

Uno de esos parámetros es la marca de tiempo. del archivo En Linux (y todos los sistemas de archivos basados ​​en Unix) hay 3 marcas de tiempo mantenido para cada archivo:

  1. Hora de la última modificación
  2. Hora del último acceso
  3. Hora del último cambio de estado (es decir, cuando se cambian los metadatos del archivo como los permisos)

Veamos cómo usar buscar para buscar archivos en función de cada una de estas marcas de tiempo .

Buscar marcas de tiempo de archivo en Linux

En primer lugar, podemos ejecutar el 'stat ‘ comando en Linux para obtener todas estas marcas de tiempo para un archivo. Por ejemplo, para un archivo con el nombre 'stat ', ejecuta:

$ stat tmp

Buscar archivos según la marca de tiempo

Ahora, para buscar archivos según la marca de tiempo , usamos el argumento '-newerXY' de buscar de la página del manual.

man find

Así, en el argumento '-newerXY' , podemos tener X como un , c , o m , respectivamente para las horas de último acceso, último cambio de estado y última modificación, y Y como t , para que podamos hacer que el siguiente argumento sea una marca de tiempo cadena.

Nota :La hora de nacimiento, es decir, la hora de creación de un archivo no se mantiene en Unix sistemas de archivos basados

Para generalizar, el comando a ejecutar se ve así:

find <directory_path> -newer<a/m/c>t ‘<timestamp>’

Aquí, el formato de la marca de tiempo debe ser:'AAAA-MM-DD HH:MM:SS' .

Probemos esto en una carpeta con pocos archivos y solo se ha accedido, modificado y cambiado el estado de dos archivos después de un tiempo específico.

find . -newerat ‘2021-02-19 06:34’
find . -newerct ‘2021-02-19 06:34’
find . -newermt ‘2021-02-19 06:34’

Verificar con 'stat' si las marcas de tiempo de ambos archivos son de hecho mayores que el tiempo especificado.

stat tmp2 tmp3
Conclusión

Hemos aprendido a usar el '-newerXY' el argumento del comando buscar para buscar archivos según la marca de tiempo .

Tenga en cuenta que también puede usar otro archivo para una marca de tiempo de referencia en lugar de especificar explícitamente la marca de tiempo , en cuyo caso la ‘t’ del argumento se puede omitir.

¡Muchas gracias por leer y háganos saber sus pensamientos en los comentarios a continuación!


Linux
  1. Cómo convertir archivos a codificación UTF-8 en Linux

  2. Cómo encontrar archivos modificados recientes o de hoy en Linux

  3. Cómo encontrar un archivo en Linux

  4. Cómo encontrar archivos de formato DOS en un sistema de archivos de Linux

  5. ¿Cómo enumero archivos con rutas completas en Linux?

Cómo encontrar archivos en Debian 10

Permisos de Linux:cómo encontrar los permisos de un archivo

Cómo encontrar archivos que contengan una cadena de texto específica en Linux

Cómo encontrar archivos modificados en las últimas 24 horas en Linux

Cómo encontrar archivos con el comando fd en Linux

Cómo comprimir un archivo en Linux