Cómo ver los últimos ficheros modificados

A veces es útil poder ver los ficheros modificados en las últimas 24 horas tanto en Linux como en Windows.

 
buscar ficheros modificados
 

Suele ser una tarea habitual e interesante en ciertos casos, cuando estamos revisando la ocupación de algún “FileSystem“, y comprobamos que la ocupación ha crecido. En esos casos nos interesa saber por qué, y qué ficheros han crecido o se han creado en las últimas horas.
 

 

Buscar ficheros modificados en Linux

 
En Linux, buscaremos los ficheros modificados en un rango de tiempo determinado, por medio del comando “find“.
 
El comando “find” tiene muchos parámetros y en este caso usaremos el parámetro “mtime” para ver los ficheros modificados en las últimas 24 horas.

buscar ficheros modificados por tiempo
 

–> Para buscar ficheros modificados con find:

find /home/usuario/ -type f -mtime 0

 

–> Para buscar directorios modificados con find:

find /home/usuario/ -type d -mtime 0

 

ficheros modificados ultimas 24 horas

 

Otros parámetros y búsquedas interesantes del comando find

 

 

  • atime: Access time :  Permite buscar ficheros según el momento en que ocurrió el último acceso.
  • mtime: Modify time : Buscamos ficheros según su modificación.
  • ctime: Change time : Buscar ficheros según haya “cambiado”, su inodo, sus permisos, el propietario …

 

  • –> para buscar según minutos, usamos:
-mmin n
File's data was last modified n minutes ago.

 

 

  • –> para buscar en los últimos n días, usamos:
mtime n

Porque n es 1 día, o sea 24 horas, así que realmente lo que estamos haciendo en el lenguaje del comando find es preguntarle por ficheros modificados en las las  últimas n * 24 horas.

-mtime n
 
File's data was last modified n*24 hours ago.  See the comments for -atime to understand how rounding affects  the  interpreta‐
tion of file modification times.

 

 

Buscar archivos modificados en Windows

 

En Windows lo haremos por medio de PowerShell; con PowerShell, ejecutando esta consulta conseguiremos encontrar los ficheros modificados en un cierto directorio en las últimas 24 horas.

 

 

Get-ChildItem -Recurse | Where-Object { $_.LastWriteTime -ge "12/27/2016" }

 
Podemos ver, según la fecha utilizada en el comando anterior, que en este caso aparecen los ficheros modificados desde el día 16:

powershellbuscar ultimos ficheros modificados
 

 

Enviar el resultado de un comando powershell a un archivo

 
Otra cosa muy útil es enviar el contenido de esa consulta a un fichero de texto para tenerlo todo en ese fichero y poder exportarlo enviarlo o analizarlo tranquilamente fuera de la terminal de PowerShell:
 
Para conseguirlo ejecutaremos esta consulta de Power Shell:

COMANDO-USADO > c:\PATH\AL\DIRECTORIO\FICHERO.txt | type c:\PATH\AL\DIRECTORIO\FICHERO.txt

 
es decir, así (ejemplo práctico):

PS C:\ Get-ChildItem -Recurse | Where-Object { $_.LastWriteTime -ge "12/27/2016" } > ficheros_modificados_24_horas.txt

 
Después hacemos un “cat“, para mostrar el contenido del fichero (en este caso lo hacemos porque el contenido es pequeño, pero cuidado si el contenido es grande …)
 
powershell enviar 
 resultado de un comando a archivo