Encuentralo todo con el comando Find

Gracias al comando find, podremos localizar ficheros dentro de la estructura de ficheros de nuestro sistema. Su estructura sería

find ruta criterios opciones

donde ruta seria desde donde queremos que se inicie la búsqueda, ya que el comando find es recursivo, es decir, se incluirán en su búsqueda las subcarpetas.

Criterios de búsqueda y opciones

Existen una serie de criterios para redefinir la búsqueda y cada uno de ellos tiene ciertas opciones:

-name : para seleccionar fichero spor su nombre. Admite caracteres comodín.

find . -name "fichero*" -print

El punto indica que se busque desde la ubicación actual. -print indica que el resultado se muestre en pantalla

-type : buscaremos un determinado tipo (directorio, vínculo simbolico, fichero, socket,..)

Los tipos de ficheros serán:

  • b: Fichero especial en bloque
  • c: Fichero especial en modo caracter.
  • d: Directorio.
  • f: Fichero
  • l: Vinculo simbolico
  • p: tuberia con nombre (pipe)
  • s: Socket (conexión de red)
find . -name "dir*" -type d -print

En este ejemplo realizaremos una búsqueda de todos los directorios cuyo nombre comience por “dir”.

-user y -group : buscaremos ficheros de un propietario o de un grupo concreto.

find . -name "nombre*" -user nombreusuario -group nombregrupo -print

Buscaremos ficheros cuyo nombre empiece por “nombre” y cuyo usuario y grupo sean los indicados.

-size : permite precisar el tamaño de los ficheros buscados.

find -size +100k

Nos servirá para encontrar todos los ficheros que superen los 100 kb.

-atime, -mtime y -ctime : podremos localizar ficheros por la fecha de modificación o último acceso.

  • Con –atime buscaremos en la fecha del último acceso
  • Con –mtime buscaremos en la fecha de la última modificación del contenido del fichero.
  • Con –ctime buscaremos por la fecha de modificación del número de inodo (modificación del nombre, cambio de ubicación, cambio de derechos, etc.)
  • En cuanto a los criterios, podemos pasarle los días, siendo 0 hoy, 1 ayer, 2 anteayer, y así sucesivamente. También los signos “+” y “-” nos indicarán mas de N días o menos de N días.
find . -mtime -1

Con este ejemplo estaremos buscando todos los ficheros de la ubicación actual que hayan sido modificados hace menos de un dia.

-perm : para buscar ficheros que tengan ciertos permisos

find . -type d -perm -777

Con esto buscaremos todos los ficheros que tengan todos los permisos activos (lectura, escritura y ejecución) para todos (usuario, grupo y otros).

Facebooktwittergoogle_plus