Findfind 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 findSi 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 nombresPara 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 usuarioPara 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 ficheroPara 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 regularesEl 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ñoLas unidades de tamaño son:[3]
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énEnlaces externos
Referencias
|