Recomendaciones

Cómo usar el comando find en Linux

¿Cómo buscar archivos en Linux? ¿Cómo encontrar cosas en el sistema? ¿Cómo usar find? Estas son preguntas comunes que todo usuario se hace tarde o temprano. En esta guía veremos cómo utilizar el comando find para localizar ficheros, aplicar filtros y ejecutar acciones sobre ellos.

 

1. Uso básico de find

Si ejecutas find sin argumentos, buscará todos los ficheros y directorios desde el punto donde lo ejecutes. Para que sea útil, debes indicarle:

  • La ruta donde buscar.
  • El nombre del fichero que deseas encontrar.

Ejemplo: buscar pepito.txt en tu directorio HOME:

$ find /home/jespinal/ -name "pepito.txt"

Usar comillas dobles es recomendable si el nombre incluye comodines como * o ?.

 

2. Uso intermedio de find

Si no recuerdas el nombre exacto del fichero, puedes usar comodines:

$ find / -name "*pep*"

Esto buscará cualquier fichero o directorio que contenga “pep” en su nombre, en cualquier parte del sistema.

Cuando realizas búsquedas exhaustivas en todo el sistema de archivos, especialmente con find /, los tiempos de respuesta pueden ser significativamente más rápidos con un SSD moderno de alta velocidad, ya que reduce drásticamente el tiempo de acceso a los inodos y metadatos durante las operaciones de búsqueda, haciendo que explorar grandes volúmenes de datos sea mucho más eficiente.

 

3. Uso semi-avanzado de find

Para buscar por tipo de fichero, usa -type. Ejemplo: listar ficheros regulares en tu HOME:

$ find /home/jespinal -type f

Tipos disponibles:

  • b: bloque especial
  • c: carácter especial
  • d: directorio
  • p: tubería (pipe)
  • f: fichero regular
  • l: vínculo simbólico
  • s: socket
  • D: puerta (Solaris)

 

4. Ejemplos prácticos

  • Buscar ficheros .log:
$ find / -type f -name "*.log"
  • Buscar y eliminar ficheros .tmp:
$ find / -type f -name "*.tmp" -delete
  • Copiar ficheros regulares al directorio /tmp:
$ find . -type f -exec cp '{}' /tmp \;

Nota: {} representa cada fichero encontrado. El \; evita que el shell interprete el punto y coma.

  • Buscar ficheros con permisos 644:
$ find . -perm 664
  • Buscar archivos .c mayores a 100k en /usr/src:
$ find /usr/src -name '*.c' -size +100k -print

Usar comillas evita que el shell interprete el comodín *.

 

Con estos ejemplos ya puedes usar find para localizar, filtrar y manipular ficheros en Linux. Para más opciones, consulta man find.

Si deseas profundizar en el uso avanzado de find y otros comandos esenciales de Linux, un libro de referencia sobre administración y comandos de Linux te proporcionará técnicas avanzadas, combinaciones de comandos y casos de uso prácticos que van más allá de la documentación básica, ayudándote a dominar herramientas como find, grep y otras utilidades del sistema.

 

 


[Volver al Índice]

Recomendaciones