Cómo buscar archivos en la terminal de Linux

find

El comando find busca archivos o ficheros en un árbol de directorios. Es el comando más común y utilizado para encontrar y filtrar archivos en Linux.

Sintaxis:

find [ruta-o-Directorio] [expresión] [texto-Busqueda]

Ejemplo:

find /home/user/Descargas/ -name "*.pdf"

Buscar en la carpeta Descargas todos los archivos con extensiones pdf.

find . -name "*.pdf"

También se puede usar un “.” en lugar de una ruta siempre que en tu terminal te encuentres ubicado en la carpeta o directorio en el que quieres hacer la búsqueda.

Opciones mas usadas:

  • -type f – archivos de tipo file (Archivos)
  • -type d – archivos de tipo directory (Directorio o Carpeta)
  • -name – nombre del archivo respetando tal como esta escrito.
  • -iname – nombre del archivo sin tomar en cuenta mayúsculas y minúsculas.

Nota: para conocer mas opciones y conocer mejor el uso de este comando se puede revisar la documentación usando el comando man find.

Una opción interesante también puede ser combinar el comando find con el comando grep para agregar para tener un filtro extra

En este ejemplo filtramos que busque archivos solamente (-type f), que contengan en cualquier parte la palabra linux indiferente si son mayúsculas o minúsculas (-iname “*linux*”) y que también contenga la palabra “shell” indiferente si son mayúsculas o minúsculas (grep -i shell) sin importar donde este ubicado.

locate

Si bien el comando find es un comando muy útil para realizar búsquedas de archivos o carpetas, este también puede ser muy lento sobretodo si la búsqueda es muy amplia. Para ello es muy útil el comando locate.

El comando locate tiene una base de datos que lista todos los archivos del sistema la cual suele actualizarse según el sistema, lo mas usual es una vez al día. También se puede forzar la actualización de la DB de locate con el comando:

sudo updatedb

El comando locate suele venir pre instalado con el sistema (Al menos en las distribuciones basadas en Ubuntu), de no tenerlo instalado solo se necesita ejecutar el siguiente comando para instalarlo:

sudo apt install mlocate

Para usar el comando locate se debe seguir su sintaxis:

locate [opcion] [nombre-archivo]

Opciones de locate:

  • -c Muestra numero de archivos llamados igual
  • -i Ignora las mayúsculas
  • -p Ignora la puntuacion y espacios.
  • -h Ayuda

Ejemplo:

Siguiendo el ejemplo anterior buscando un archivo de extensión pdf del cual solo podríamos recordar solo parte de su nombre en el caso de este ejemplo la palabra “scripting” se realiza la búsqueda con las opciones -i y -p para ignorar mayúsculas y espacios.

Aquí termina esta entrada espero que les sea de utilidad y aclare tus dudas. pronto habrá una próxima entrada con mas noticias, novedades y laboratorios.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *