Find

find es un comando común en sistemas Unix que se utiliza para encontrar archivos en un determinado directorio a partir de diversas reglas de búsqueda, tales como nombre exacto de archivo, fecha de creación, tamaño, permisos, etc. llegando a ser muy flexible y una de las herramientas más útiles en la administración de sistemas cuando se sabe utilizar.

En los sistemas GNU/Linux forma parte del paquete findutils.

Utilización de find

Si find devuelve el valor 0 significa que la búsqueda ha terminado de manera satisfactoria y puede continuar si corresponde con la ejecución de alguna acción sobre el resultado, en caso de error devuelve un valor mayor que 0.

Si no se especifica ningún directorio de búsqueda, find asume el directorio actual.

Buscar archivos y mostrar sus nombres

Para buscar todos los archivos dentro de un directorio con extensión .[1]

find /home/usuario -name "*.txt"

Para encontrar un archivo en todo el sistema, se debe buscarlo desde la carpeta raíz /

find / -name nombre_de_archivo

Buscar archivos por nombre de usuario

Para buscar un archivo por nombre de usuario:

find / -user nombreusuario

Esto mostrará todos los archivos del usuario a partir de la carpeta raíz / 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 la búsqueda utilizando expresiones regulares. Esto le da una potencia considerable. Por ejemplo si deseamos buscar archivos del tipo archivo01_01.txt, archivo02_03.txt, etc:

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

Es válido el uso de expresiones regulares:[2]

find / -name "[0-9]*"     (todo lo que empiece con un dígito)
find / -name "[Bb]*"      (todo lo que empiece con un la letra B o b)
find / -name "[a-m]*.mp3" (todo lo que empiece entre a y m y termine en ".mp3")

Búsqueda por tamaño

Las unidades de tamaño son:[3]

  • c – bytes
  • k – kilobytes
  • M – megabytes
  • G – gigabytes
  • b – trozos de 512 bytes

Para buscar archivos de un tamaño determinado, por ejemplo que tengan 20 Megabytes:

find / -size 20M

Para buscar archivos que tengan más de 5 Megabytes:

find / -size +5M

Véase también

Enlaces externos

Referencias

  1. «Buscar archivos en Linux». WebTutoriales. Archivado desde el original el 26 de enero de 2021. Consultado el 3 de febrero de 2021. 
  2. González D,, Sergio. «Encuentra cualquier cosa en Linux con find». LINUXTOTAL.com.mx. Consultado el 3 de febrero de 2021. 
  3. «Cómo usar los comandos Find y Locate en Linux:». HOSTINGER TUTORIALES. 23 de diciembre de 2020. Consultado el 3 de febrero de 2021. 

Content Disclaimer

Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.

  1. The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
  2. There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
  3. It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
  4. Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
  5. Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.