Buscar archivos en Linux

Buscar archivos desde la linea de comandos en Linux

Buscar archivos desde la consola de Linux es una tarea complicada si eres nuevo en sistemas Linux.

Para buscar archivos el comando más común es el comando find. Este comando es muy potente y permite una infinidad de opciones para buscar tipos de archivos en todo el sistema. Veamos algunos ejemplos de cómo funciona.

Buscar archivos y mostrar sus nombres

Para buscar todos los archivos dentro de un directorio con extensión .txt

find /home/miusuario -name "\*.txt"

Para encontar un archivo en todo el sistema, podemos buscarlo desde la carpeta raiz /

find / -name nombre_de_archivo

Buscar archivos por nombre de usuario

Si deseamos buscar un archivo por nombre de usuario podemos escribir:

find / -user nombreusuario

Esto mostrará todos los archivos de ese usuario a partir de la carpeta raiz / y todas sus subcarpetas.

Buscar archivos por tamaño de fichero

Para buscar archivos vacíos (el . indica el directorio en el que nos encontramos):

find . -size 0c

Para buscar archivos de un tamaño en kilobytes:

find . -size 54k

Buscar por expresiones regulares

El comando find permite buscar utilizando expresiones regulares. Esto nos ofrece una potencia considerable. Por ejemplo si deseamos buscar archivos del tipo archivo01_01.txt, archivo02_03.txt, etc, podemos utilizar:

find . -regex './archivo0[1-2]_0[1-3].\*'

Además podemos anidar todas las opciones para hacer consultas más complejas.

Buscando archivos con el comando Locate

También existe otra forma de buscar archivos en el índice del sistema, el comando locate.

Este comando funciona de la siguiente forma:

locate nombredelarchivo

Y devolverá todas las rutas en donde aparece el nombre entrado, podemos consultar dentro de los resultados devueltos por ejemplo:

locate miarchivo | grep bin

Devolverá todos las rutas del sistema que contengan el nombre miarchivo y que además también aparezca el texto bin.

Para actualizar el índice del sistema podemos utilizar el comando updatedb

sudo updatedb

Es recomendable ejecutarlo antes de hacer un locate para añadir las rutas recientes, por ejemplo si acabamos de instalar un programa.