¿Cómo buscar archivos en Linux?

Si no conoces como buscar ficheros en Linux por terminal, aquí te dejo las búsquedas más comunes que puedes realizar a través del comando find.

Si eres nuevo en Linux y no conoces como buscar ficheros a través de la terminal, aquí te dejo las búsquedas más comunes que puedes realizar a través del comando find, el cual nos permite buscar ficheros en un árbol de directorios.

Su sintaxis es:

find [donde_buscar] [opciones]

Buscar ficheros por nombre

Utiliza el flag -name seguido del nombre del fichero o un patrón de búsqueda.

Por ejemplo:

  • Busca el fichero main.go en el directorio ~/EDteam

    find ~/EDteam -name "main.go"
  • Busca todos los ficheros con extensión go en el directorio ~/EDteam

    find ~/EDteam -name "*.go"
  • Busca todos los ficheros que contengan la palabra config a partir del directorio actual .

    find . -name "*config*"

También puedes buscar ficheros sin distinguir entre mayúsculas y minúsculas, utiliza el flag -iname en lugar de -name.

Por ejemplo, el siguiente comando buscará en el directorio ~/EDteam todos los ficheros que coincidan con el nombre: FOO, foo, Foo, FoO etc.

find ~/EDteam -iname "foo"

Buscar ficheros por tipo

Utiliza el flag type para indicar el tipo de fichero que quieres buscar, seguido del identificador del fichero: d (directorio), f (fichero regular) y l (enlace simbólico), existen más identificadores pero estos son los más utilizados.

Por ejemplo:

Busca la carpeta cursos en el directorio ~/EDteam

find ~/EDteam -iname "cursos" -type d

Buscar ficheros por fecha de modificación

Utiliza los flag -mmin o -mtime, seguido de un valor numérico para especificar el tiempo de modificación.

  • mmin: Busca archivos modificados hace n minutos.
  • mtime: Busca archivos modificados hace n días.

Por ejemplo:

Busca los ficheros modificados exactamente hace 2 días del directorio ~/EDteam

find ~/EDteam -mtime 2

A través de los signos + o - puedes indicar que el tiempo de modificación para la búsqueda sea mayor o menor a la unidad, por ejemplo:

  • Busca los ficheros modificados hace menos de 4 días del directorio ~/EDteam

    find ~/EDteam -mtime -4
  • Busca los ficheros modificados hace más de 3 días del directorio ~/EDteam

    find ~/EDteam -mtime +3
  • Busca los ficheros modificados hace menos de 30 minutos del directorio ~/EDteam

    find ~/EDteam -mmin -30

Buscar ficheros por usuario y/o grupo

Utiliza el flag -user o el flag -group para buscar usuarios o grupos respectivamente.

Por ejemplo:

  • Busca los ficheros del usuario alejandro del directorio ~/EDteam

    find ~/EDteam -user alejandro
  • Busca los ficheros del grupo admin del directorio ~/EDteam

    find ~/EDteam -group admin

Buscar ficheros por tamaño

Utiliza el flag -size el cual recibe como argumento un valor numérico seguido de una unidad: c (bytes), k (kilobytes), M (megabytes) o G (Gigabytes).

Por ejemplo:

Busca los archivos con tamaño igual a 4M que se encuentre en el directorio ~/EDteam.

find ~/EDteam -size 4M -type f

También puedes especificar un tamaño menor que la unidad usando el signo - , o mayor que una unidad con el signo +, por ejemplo:

  • Busca los archivos mayores a 2M del directorio ~/EDteam.

    find ~/EDteam -size +2M -type f

Si quieres saber más de Linux puedes tomar nuestro curso Administración de Servidores Linux Desde Cero.

Sigue leyendo