Quiero hablar hoy de cómo buscar archivos y directorios en tu sistema basado en Linux.
A la hora de buscar archivos de configuración, scripts creados por un usuario, scripts de programas (como por ejemplo nmap), etc… se hace muy útil saber utilizar los siguientes comandos:
- locate
- which
- find
LOCATE
El comando locate forma parte del paquete «findutils«, el cual contiene programas para encontrar ficheros. Este comando es bastante ágil y rápido, ya que está diseñado para realizar búsquedas basadas en patrones de nombres
Cómo instalar
Algunas distribuciones de Linux puede que no vengan con este comando ya preinstalado. Si este es el caso, la instalación es muy sencilla:
sudo apt-get update sudo apt-get install mlocate
Sintaxis básica
Este comando tiene un uso muy sencillo. La sintaxis básica es:
locate [nombre_archivo]
Algunos ejemplos:


Argumentos útiles
Dentro de la simpleza de este comando, podemos utilizar algunos argumentos para extender su funcionalidad.
- Contador del número de archivos. Esto se consigue con el argumento -c
- Buscar por nombre exacto del archivo. Añadimos la opción -r y añadir el símbolo de dólar ($) al final del término de búsqueda
- Añadimos la opción -i para ignorar distinción entre mayúsculas y minúsculas.

**Recuerda que siempre con el comando locate --help puedes obtener mas ayuda

Actualizar base de datos
El comando locate busca en una base de datos que se crea al instalar la herramienta. Allí es donde dicho comando tiene toda la información indexada y es también donde el comando busca coincidencias. Por eso es tan rápido.
Siempre es bueno actualizar dicha base de datos al instalar la herramienta y cuando aparezca el siguiente warning: locate: warning: database /var/cache/locate/locate.db' is more than 8 days old
El comando que usaremos para actualizar la base de datos es el siguiente:
sudo updatedb