Inicio

martes, 13 de junio de 2017

Comando “locate”


Locate crea y lee una o mas bases de datos de ficheros que actualiza periódicamente de forma automática, pero que también pueden ser actualizadas manualmente, a las que accede en búsqueda de coincidencias por medio del ingreso de un patrón de entrada.

Instalación

-Debian


-Archlinux


Sintaxis

La sintaxis del comando de búsqueda "locate" es muy sencilla, y muy potente


Siendo "patrón" el recurso que es objeto de nuestra búsqueda.

Actualizar base de datos

Locate para realizar las búsquedas usa una base de datos, esa base de datos tiene toda la información indexada y locate la consulta directamente en busca de coincidencias. Esta base de datos se encuentra ubicada en el siguiente directorio:

/var/lib/mlocate/mlocate.db

Esta se actualiza diariamente, pero también podemos actualizarla de forma manual, para actualizarla utilizamos el siguiente comando con permisos de superusuario:


Locate no puede informar de archivos creados después de la actualización más reciente de su base de datos. Para estos casos es que utilizamos la actualización manual. En caso de pasar, por ejemplo, un backup a nuestro equipo, y querer hacer un "locate" en busca de algún archivo presente en ese backup, no nos lo indexara si primero no actualizamos su base de datos de forma manual.

Modificar la configuración de la base de datos

Para modificar la configuración con la que "locate" realiza las búsquedas accedemos al fichero “updatedb.conf” con permisos de superusuario y ubicado en el directorio "/etc/updatedb.conf" utilizando el editor que mas cómodo nos quede.


Donde nos imprimirá por pantalla


Que pasando en limpio y completo, seria...

PRUNE_BIND_MOUNTS = "yes"

PRUNEFS = "9p afs anon_inodefs auto autofs bdev binfmt_misc cgroup cifs coda configfs cpuset cramfs debugfs devpts devtmpfs ecryptfs exofs ftpfs fuse fuse.encfs fuse.sshfs fusectl gfs $

PRUNENAMES = ".git .hg .svn"

PRUNEPATHS = "/afs /media /mnt /net /sfs /tmp /udev /var/cache /var/lib/pacman/local /var/lock /var/run /var/spool /var/tmp"

Donde:

PRUNEFS – Lista los filesystem que no serán escaneados.

PRUNENAMES – Lista de nombres de directorios que no serán escaneados.

PRUNEPATHS – Lista de rutas que usan los directorios que no serán escaneados.

Ver información de la base de datos

Tipos de búsquedas con locate

#locate -A “patrón”


Imprime todas las coincidencias que existen entre la base de datos y el o los patrones ingresados

#locate -c “patrón”


Cuenta sólo el número de coincidencias de el o los patrones de entrada ingresados con los de la bases de datos. En este caso usaremos el patrón del ejemplo anterior para visualizar que el numero de coincidencias es igual a la cantidad de coincidencias arrojadas en el ejemplo anterior.

#locate -e “patrón”


Imprime solo las coincidencias existentes entre el o los patrones y las bases de datos, (En caso de que el fichero fuese borrado después de una actualización de la base de datos).

#locate -i “patrón”


Ignora las distinciones por mayúscula y minúscula en la búsqueda.

#locate -V


Imprime información sobre la versión de “locate”con la que se esta trabajando.

#locate -S


Nos muestra información sobre la bases de datos. También nos brinda información sobre el numero de directorios, la cantidad de archivos y el tamaño utilizado para almacenar la base de datos.

Espero sea de utilidad.
Saludos, Cristian.

No hay comentarios.:

Publicar un comentario