4.9.2.- El comando locate

locate_titulo

Sintaxis:

locate_sintaxis

Donde opción es una de las opciones que podamos elegir para la búsqueda y patrón el nombre del fichero a buscar; locate es un comando del paquete findutils de GNU que provee una fácil y rápida manera de buscar archivos en el sistema completo basado en patrones de nombres.

Este comando es mucho más rápido (aunque menos flexible) que find, pues utiliza los datos en una base de datos temporal que almacena los nombres de todos los archivos en el sistema, por lo que también se pueden experimentar fallas al buscar un archivo creado recientemente.

Al trabajar con una base de datos, normalmente es mucho más rápido que find, en particular en las búsquedas por todo el sistema. Sin embargo probablemente nos devuelva bastantes falsas alarmas, en especial si deseamos localizar un fichero con un nombre corto.

Para renovar la base de datos se utiliza el comando updatedb, parte también de findutils, y que en muchas distribuciones GNU/Linux se ejecuta por defecto periódicamente o por lo menos se agrega a los códigos programados de cron.

Algunos ejemplos:

locate_simple

Ejemplo de búsqueda simple.

Despliega el número de ficheros del mismo nombre.

Muestra el número de ficheros con el mismo nombre.

Ignora las mayúsculas.

Ignora las mayúsculas.

locate_0

Muestra el resultado de la búsqueda en una sola línea.

Locate_l_3lineas

Con la opción -l podemos definir el número de líneas que queremos que nos muestre, en este caso, tres líneas.

 Algunas distribuciones de Linux utilizan el comando slocate en lugar de locate. El programa slocate incluye características de seguridad que impiden que los usuarios vean los nombres de los ficheros de los directorios en los que no tienen acceso. La mayoría de los sistemas que utilizan slocate, el comando locate es un enlace a slocate, por lo que locate implementa las características de seguridad de slocate. Algunas distribuciones por defecto no instalan ninguna de las dos. Para más información vea la página man de locate.