Cómo buscar y encontrar archivos de forma recursiva en Linux

Cómo buscar y encontrar archivos de forma recursiva en Linux
Este breve tutorial explica cómo buscar y encontrar los archivos de manera recursiva en los sistemas operativos de Linux.

Después de leer este artículo, podrá encontrar cualquier archivo recursivamente utilizando las diferentes técnicas que incluyen una búsqueda de archivos, búsqueda de múltiples archivos, búsqueda de archivos con permisos y más. Este documento está optimizado para usuarios de Linux nuevos y experimentados. Todos los métodos son válidos para cada distribución de Linux.

Todos los ejemplos de este tutorial contienen capturas de pantalla para facilitar que cualquier usuario de Linux las entienda y reproduzca.

Encontrar archivos recursivamente en Linux

El comando Find no necesita banderas para buscar los archivos de manera recursiva en el directorio actual. Solo necesita definir el directorio principal y el nombre del archivo utilizando el -nombre opción. Este comando buscará el archivo dentro del directorio principal y todos los subdirectorios.

La sintaxis es simple, como se muestra en lo siguiente:

encontrar -name

Si quieres encontrar el 27.JPG Archivo dentro de su directorio de inicio y subdirectorios, ejecute el siguiente comando como se muestra en la siguiente captura de pantalla:

encontrar ~/ -name 27.JPG

Como puede ver, el archivo se encontró en el /home/linuxhint/downloads/recur subdirectorio.

Una alternativa al comando anterior es el árbol Comando que se muestra en el siguiente ejemplo donde busca el mismo archivo llamado 27.JPG Dentro del directorio actual:

Árbol -P 27.JPG

Como puede ver en la figura anterior, el formato es bastante diferente. Parece ser más fácil de usar o más agradable siempre que no necesite copiar la ruta completa para pegarlo.

La siguiente captura de pantalla muestra cómo usar el comando Buscar para buscar recursivamente más que un archivo.

La sintaxis para buscar varios archivos de forma recursiva es lo siguiente:

encontrar . \ (-name -o -name "\)

Tenga en cuenta que hay un -O bandera antes del segundo nombre de archivo. Puede agregar más de un archivo agregando más -O -nombre banderas. Por ejemplo, para encontrar 4 archivos con el mismo comando, use la siguiente sintaxis:

encontrar . \ (-name -o -name -o -name "\)

En el ejemplo práctico descrito en la siguiente imagen, use este comando para encontrar un archivo llamado 27.JPG y un archivo cuyo nombre comienza con "DIAGRAMA"Pero sin especificar su extensión. En su lugar, use un comodín (*) para encontrar cualquier archivo llamado DIAGRAMA independientemente de su tipo.

encontrar . \ (-name 27.jpg -o -name "diagrama*" \)

Como puede ver en la imagen anterior, ambos archivos se encontraron recursivamente.

El siguiente ejemplo describe cómo encontrar los archivos por extensión utilizando el encontrar dominio. En la siguiente figura, puede ver cómo encontrar recursivamente todo el .JPG archivos usando el comodín nuevamente. La sintaxis es bastante simple:

encontrar ~/ -type f -name "*."

Así, para encontrar todo el .JPG archivos recursivamente, ejecute el siguiente comando:

encontrar ~/ -type f -name "*.JPG "

Como se muestra en la imagen anterior, todos los archivos JPG, incluida su ruta, se enumeran correctamente. Puedes reemplazar el .Extensión JPG para cualquier extensión que desee buscar como .png, .TXT, .C y más.

Ahora, supongamos que no desea encontrar un archivo, sino un directorio recursivamente. Todo lo que necesita hacer es usar el mismo comando que se mostró en el primer ejemplo de este tutorial y luego agregue el -tipo D opción. La sintaxis de la siguiente manera:

encontrar ~/ -lame d -name

En el siguiente ejemplo práctico, use la sintaxis anterior para encontrar la repetirse directorio.

encontrar ~/ - -type d -name recur

Como puede ver en la figura anterior, el directorio llamado "Recur" se encontró con éxito.

También puede encontrar los archivos por tamaño utilizando la siguiente sintaxis donde está el directorio principal que contiene los subdirectorios y es el tamaño de los archivos que puede enumerar con su ruta completa.

sudo encontrar -size

El siguiente ejemplo describe cómo encontrar los archivos de 10 MB de tamaño. Puede reemplazar las unidades de definición M en MEGABYTE con C para bytes, w por dos palabras de dos bytes, k para kibytes y GRAMO Para Gibibytes (las unidades de nota son sensibles a las casas).

Para encontrar los 10 archivos Mebibytes, ejecute el siguiente comando:

sudo Find /var -tamaño 10m

Los archivos de 10 m se enumeraron correctamente con sus rutas.

La sintaxis para encontrar los archivos basados ​​en sus permisos se muestra a continuación:

encontrar ~ permanente

Supongamos que desea identificar y enumerar los archivos con lectura, escritura y ejecución de permisos (777). El comando para ejecutar es el siguiente:

encontrar ~/ -Perm 777

El último ejemplo de este tutorial muestra cómo encontrar y enumerar los archivos y directorios por tamaño.

du -hs ~/*

Como se muestra, los archivos se enumeran por tamaño con unidades adecuadas. Los directorios y archivos de tamaño 0 están vacíos.

Conclusión

La versatilidad y la flexibilidad de Linux permiten encontrar los archivos (y otras funciones) de manera recursiva de muchas maneras. Pueden ser ejecutados fácilmente por todos los usuarios de Linux independientemente de su nivel de conocimiento, desde los nuevos usuarios hasta los administradores del sistema. Todas las técnicas descritas anteriormente son válidas para todas las distribuciones de Linux e incluso para algunos sistemas UNIX. Según sus páginas de hombre, algunas banderas pueden variar en algunas distribuciones, pero la mayoría de ellas son universales. En caso de que su distribución de Linux no coincida con ninguno de los comandos explicados anteriormente, puede leer la página del hombre. Es muy recomendable a los lectores practicar los ejemplos para incorporar este conocimiento.

Muchas gracias por leer este tutorial de Linux. Sigue siguiéndonos para obtener más consejos profesionales de Linux.