LinuxParty

NUESTRO SITIO necesita la publicidad para costear hosting y el dominio. Por favor considera deshabilitar tu AdBlock en nuestro sitio. También puedes hacernos una donación entrando en linuxparty.es, en la columna de la derecha.

Ratio: 5 / 5

Inicio activadoInicio activadoInicio activadoInicio activadoInicio activado
 
¿Cómo encuentro archivos por fecha en el sistema UNIX y Linux? ¿Cómo buscar archivos que se crearon en una fecha específica en un sistema similar a Linux o Unix? ¿Cómo obtener una lista de todos los archivos que se han modificado en una fecha específica en Linux o Unix?

Detalles del tutorial
AnclaNivel de dificultad Fácil
AnclaPrivilegios de raíz No
AnclaRequisitos Linux o Unix
AnclaEst. tiempo de leer 4 minutos

Los sistemas operativos similares a Linux y UNIX no almacenan la hora de creación de archivos. Sin embargo, puede usar el acceso al archivo y la hora y fecha de modificación para averiguar el archivo por fecha. Por ejemplo, uno puede listar todos los archivos que han sido modificados en una fecha específica. Veamos cómo encontrar un archivo por fecha en Linux. Debe usar el comando ls y encontrar el comando.

Ejemplo de comando ls para buscar archivos por fecha

La sintaxis es la siguiente:

ls -l  
ls -lt
ls -ltu
ls -lt /etc/ | more

Salidas de muestra:

drwxr-xr-x 2 root root    4096 Sep 24 11:42 sysctl.d
drwxr-xr-x 2 root root    4096 Sep 24 11:42 logrotate.d
drwxr-xr-x 2 root root    4096 Sep 24 11:42 init
drwxr-xr-x 2 root root    4096 Sep 24 11:42 init.d
drwxr-xr-x 2 root root    4096 Sep 24 11:42 dnsmasq.d-available
drwxr-xr-x 2 root root    4096 Sep 23 06:22 bash_completion.d
-rw-r--r-- 1 root root   22667 Sep 22 18:17 ld.so.cache
drwxr-xr-x 9 root root    4096 Sep 22 18:17 apparmor.d
drwxr-xr-x 2 root root    4096 Sep 21 06:21 ssh
drwxr-xr-x 2 root root    4096 Sep 20 05:35 python3.5
-rw-r--r-- 1 root root    3611 Sep 20 05:35 mailcap
drwxr-xr-x 3 root root    4096 Sep 13 12:29 apparmor
drwxr-xr-x 7 root root    4096 Aug 22 21:07 network
-rw-r--r-- 1 root root     929 Aug 22 21:07 resolv.conf
-rw-r--r-- 1 root root     492 Aug 22 21:07 fstab
drwxr-xr-x 2 root root    4096 Aug 22 16:31 cron.hourly
drwxr-xr-x 2 root root    4096 Aug 22 16:29 percona-toolkit
drwxr-xr-x 2 root root    4096 Aug 22 16:29 gdb
drwxr-xr-x 2 root root    4096 Aug 18 21:28 cron.daily
..
..
...
-rw-r--r-- 1 root root     575 Oct 22  2015 profile
-rw-r--r-- 1 root root   10368 Oct  2  2015 sensors3.conf
-rw-r--r-- 1 root root    2188 Aug 31  2015 bash.bashrc
-rw-r--r-- 1 root root      45 Aug 12  2015 bash_completion
-rw-r--r-- 1 root root     477 Jul 19  2015 zsh_command_not_found
-rw-r--r-- 1 root root     604 Jul  2  2015 deluser.conf
-rw-r--r-- 1 root root    3663 Jun  9  2015 screenrc

Debe usar el comando grep /  egrep para filtrar información: una solución mejor y recomendada es el comando de búsqueda:

$ ls -lt /etc/ | grep filename
ls -lt /etc/ | grep 'Jun 20'


Una mejor forma de encontrar algo es usar find.

find . -type f -ls |grep '2017'
find . -type f -ls |grep 'filename'
find /etc/ -type f -ls |grep '25 Sep'

buscar Ejemplo de comando

Si necesita un rango de fechas específico hace muchos días, entonces considere usar el comando de búsqueda. En este ejemplo, busque los archivos modificados entre el 1 de enero de 2007 y el 1 de enero de 2008, en el directorio /data/images:

touch --date "2007-01-01" /tmp/start
touch --date "2008-01-01" /tmp/end
find /data/images -type f -newer /tmp/start -not -newer /tmp/end

Puede guardar la lista en un archivo de texto llamado salida.txt de la siguiente manera:

find /data/images -type f -newer /tmp/start -not -newer /tmp/end > output.txt

Linux busca archivo por fecha usando el comando de fecha

Gnu encuentra como varias opciones de línea de comando para listar archivos por modificación y acceder a la marca de fecha/hora.

Saluda a la opción -newerXY para el comando de búsqueda

La sintaxis es la siguiente: Las letras X e Y pueden ser cualquiera de las siguientes letras:

find /dir/ -type f -newerXY 'yyyy-mm-dd'
find /dir/ -type f -newerXY 'yyyy-mm-dd' -ls

  1. a. - El tiempo de acceso de la referencia del archivo
  2. B. - La hora de nacimiento de la referencia del archivo.
  3. c. - El tiempo de cambio de estado del inodo de referencia
  4. m. - El tiempo de modificación de la referencia del archivo
  5. t. - La referencia se interpreta directamente como un tiempo

Para ver todos los archivos modificados el 24/09/2017 en el directorio actual:

find . -type f -newermt 2017-09-24
## pass the -ls option to list files in ls -l format ##
find . -type f -newermt 2017-09-24 -ls


O Salidas de muestra:


find . -type f -newermt 2017-09-24 ! -newermt 2017-09-25
find . -type f -newermt 2017-09-24 ! -newermt 2017-09-25 -ls

      956      4 -rw-r--r--   1 root     root          910 Sep 24 11:42 ./init.d/.depend.boot
      958      4 -rw-r--r--   1 root     root          876 Sep 24 11:42 ./init.d/.depend.start
      959      4 -rw-r--r--   1 root     root          783 Sep 24 11:42 ./init.d/.depend.s

Para ver todos los archivos accedidos el 25/Sep/2017:

$ find . -type f -newerat 2017-09-25 ! -newerat 2017-09-26

O

$ find . -type f -newerat 2017-09-25 ! -newerat 2017-09-26 -ls

Enumere todos los archivos *.c a los que se accedió hace 30 días

Escriba el siguiente comando:

find /home/you -iname "*.c" -atime -30 -type f

O

find /home/you -iname "*.c" -atime -30 -type f -ls

Enumere todos los archivos *.c a los que se accedió hace más de 30 días

Escriba el siguiente comando:

find /home/you -iname "*.c" -atime +30 -type f
O
find /home/you -iname "*.c" -atime +30 -type f -ls

Enumere todos los archivos *.c a los que se accedió exactamente hace 30 días

Escriba el siguiente comando:

find /home/you -iname "*.c" -atime 30 -type f
O
find /home/you -iname "*.c" -atime 30 -ls

 

Pin It

No estás registrado para postear comentarios



Redes:



   

 

Suscribete / Newsletter

Suscribete a nuestras Newsletter y periódicamente recibirás un resumen de las noticias publicadas.

Donar a LinuxParty

Probablemente te niegues, pero.. ¿Podrías ayudarnos con una donación?


Tutorial de Linux

Filtro por Categorías