GNU/Linux >> Tutoriales Linux >  >> Linux

Comando Find de Linux con ejemplos prácticos

El comando de búsqueda es una potente utilidad de búsqueda que se utiliza para localizar archivos en sistemas operativos similares a Linux y Unix. Puede encontrar archivos y directorios basados ​​en diferentes criterios como nombre, extensión, tipo, modificación y fecha de creación, permisos, tamaño, propietario.

Buscar también puede realizar una acción basada en un comando, por ejemplo, buscar archivos y ejecutar eliminar, contar, etc.

Este tutorial se centrará en explicar la forma de usar el comando de búsqueda y lo guiará a través de ejemplos.

Sintaxis:

La sintaxis básica de find el uso del comando es el siguiente:

find <directory-to-search> [OPTIONS] <find name,file,extension>

El -H y -L Las opciones se utilizan para administrar enlaces simbólicos durante la búsqueda, -P (no seguir enlaces simbólicos) y -L (seguir enlaces simbólicos).

1. Buscar un archivo por nombre

Para encontrar un archivo por su nombre , use el comando de búsqueda con -name opción.

Suponiendo que desea buscar el archivo con el nombre 'nginx.yaml' en el directorio Documentos, puede ejecutar el siguiente comando:

$ find /Documents -name nginx.yaml

Esto encontrará el archivo llamado "nginx.yaml" en Documentos/ y todos los subdirectorios:

Además, para buscar el archivo "nginx.yaml" en el directorio actual y todos sus subdirectorios, ejecute:

$ find -name nginx.yaml

El punto (.) después del comando de búsqueda indica que se debe comenzar a buscar desde el directorio actual:

$ find . -name nginx.yaml

2. Buscar archivos por extensión

Si desea buscar todos los archivos por extensión , puede usar el comando de búsqueda con -name opción siguiente con *.

Por ejemplo, puede buscar todos los archivos que tengan la extensión '.png' en el directorio de inicio ejecutando el siguiente comando:

$ find $HOME -name *.png

3. Buscar solo directorios

Si desea buscar solo directorios , puede ejecutar el comando de búsqueda con -type d opción.

Supongamos que desea buscar todos los directorios en la carpeta Documentos/, ejecutemos:

$ find /Documents -type d

4. Buscar solo archivos

Hay muchos tipos diferentes de archivos en Linux, como:directorios, enlaces simbólicos, socket, archivos normales, etc. Si desea buscar solo archivos normales , puede ejecutar el comando de búsqueda con la opción '-type f'.

Por ejemplo, suponiendo que solo encuentre archivos en el directorio actual, ejecutemos:

$ find . -type f

5. Buscar y eliminar

En algunas situaciones, desea buscar y eliminar archivos/directorios que ya no son necesarios, puede ejecutar el comando de búsqueda con la opción '-delete'.

Por ejemplo, encontrar todas las imágenes con extensión *.png en la carpeta Documentos/ y eliminarlas:

$ find /Documents -name *.png -delete

6. Encuentra archivos que tengan permisos específicos

Si desea buscar todos los archivos que tienen permiso específico , puede usar el comando de búsqueda de Linux con la opción '-perm'.

Por ejemplo, para encontrar archivos que tengan el permiso '755', ejecutemos:

$ find . -type f -perm 775 -exec ls -l {} \;

7. Encuentra archivos y directorios por fecha/hora

El comando de búsqueda de Linux le permite buscar archivos y directorios por marca de fecha/hora.

Puede usar el comando de búsqueda con la opción '-mtime -N' para buscar archivos que se modificaron por última vez hace 'N' días. Por ejemplo, para buscar todos los archivos que se modificaron en los últimos 2 días en el directorio actual, ejecutemos:

$ find . -type f -mtime -2 -exec ls -l {} \;

Otra forma de usar el comando de búsqueda para buscar archivos/directorios por fecha/hora es usando la opción '-newerXY'. Donde X e Y pueden ser:

a - el tiempo de acceso del archivo de referencia

B - la hora de nacimiento del archivo de referencia

c - el tiempo de cambio de estado del inodo del archivo de referencia

m - el tiempo de modificación del archivo de referencia

t - referir se interpreta directamente como una hora

Por ejemplo, para buscar todos los archivos modificados el 4 de julio de 2020 en el directorio actual, ejecutemos:

$ find . -type f -newermt 2020-07-04 -ls

8. Encuentra archivos y directorios por tamaño

El comando de búsqueda de Linux le permite buscar archivos/directorios por tamaño ejecutando el comando con la opción '-size'.

Suponiendo que desea encontrar archivos de más de 1 GB, puede ejecutar el siguiente comando:

$ find . -type f -size +1G

Algunos ejemplos prácticos

01) Encuentra archivos/directorios vacíos

Esta salida enumerará todos los archivos y carpetas vacíos en el directorio y subdirectorios actuales:

$ find . -empty -ls

02) Buscar todos los archivos .jpg

$ find . -name *.jpg

03) Buscar todos los directorios con permiso 644

El resultado muestra todas las carpetas en el directorio o subdirectorio actual que tienen permiso 644:

$ find . -type d -perm 644 -ls

04) Buscar archivos propiedad de un usuario específico

Si desea verificar todos los archivos propiedad del usuario "cas" en el directorio actual, puede hacerlo de la siguiente manera:

$ find . -user cas -ls

05) Buscar archivos por número de inodo

Para buscar un archivo por su número de inodo, puede usar find con -inum opción. Por ejemplo:

$ find -inum 534937

06) Contar el número de archivos

$ find -type f -exec basename {} \; | wc -l

07) Contar el número de directorios

$ find -type d -exec basename {} \; | wc -l

08) Buscar archivos con una profundidad particular

Suponiendo que desea buscar el archivo "Dockerfile" en la carpeta HOME y sus subdirectorios y no en los subdirectorios del siguiente nivel, debe establecer la opción '-max depth' en 2 de la siguiente manera:

$ find $HOME -maxdepth 2 -name Dockerfile

Conclusión

Otra herramienta poderosa es el comando fd, que es una alternativa al comando de búsqueda.

En este tutorial, aprendimos cómo usar el comando de búsqueda de Linux para buscar archivos y directorios. Gracias por leer y por favor deje su sugerencia en la sección de comentarios a continuación.


Linux
  1. Comando JQ en Linux con ejemplos

  2. Uso del comando de búsqueda de Linux:uso con ejemplos

  3. Cómo encontrar archivos con el comando fd en Linux

  4. Comando rsync de Linux con ejemplos prácticos

  5. encontrar ejemplos de comandos en Linux

12 ejemplos prácticos de In Command en Linux

Comando de espera en Linux explicado con ejemplos prácticos

Tutorial de comando de búsqueda de Linux (con ejemplos)

¡Mami, lo encontré! — 15 ejemplos prácticos de comandos de búsqueda de Linux

Comando lsof en Linux con ejemplos

Comando Linux comm con ejemplos