¿Cómo usar el comando de búsqueda en Linux para buscar archivos?

How Use Find Command Linux Search Files



Si es un usuario de Linux, entonces no puede simplemente confiar en la GUI para realizar varias tareas, por lo tanto, una comprensión sólida de los comandos de la terminal es realmente esencial. Todas las distribuciones basadas en Linux ejecutan los comandos para realizar diferentes tareas administrativas.

Aunque la terminal de Linux es una interfaz de texto que parece compleja, en realidad es muy flexible, fácil de usar y una herramienta bastante útil. Los comandos se pueden copiar fácilmente de fuentes en línea y pegar en el terminal para realizar diversas operaciones. Hay toneladas de comandos, pero esta publicación se centrará en el comando de búsqueda.







El comando de búsqueda se utiliza para buscar, filtrar o buscar archivos y carpetas en su sistema de acuerdo con las condiciones especificadas por el usuario y realizar varias operaciones en ellos.



Analicemos en detalle cómo usar el comando de búsqueda, su sintaxis y varias operaciones realizadas por este comando.



Sintaxis del comando find en Linux

La sintaxis del comando de búsqueda se muestra a continuación:





encontrar [sendero] [opciones] [expresión]

Tres atributos van con el comando de búsqueda:

  • [ruta]: Define el directorio donde empezar a buscar.
  • [opciones]: define los criterios de filtrado, p. ej. buscar un archivo / carpeta por su nombre, permiso, hora o fecha.
  • [expresión]: Define qué acciones realizar con el archivo.

Todos los atributos anteriores son opcionales, ya que se pueden utilizar de acuerdo con el requisito.



Para la demostración, he creado diferentes directorios y algunos archivos de texto, vea la imagen a continuación:

buscar / 1% 20copy.png

Encontrar un archivo por nombre

Para buscar el archivo por nombre, use el siguiente comando:

$encontrar.-nombreMyTextFile1.txt

buscar / 2% 20copy.png

El punto después de buscar en el comando anterior indica el directorio actual.

Si no recuerda el nombre exacto del archivo, la búsqueda se puede refinar aún más y hacer que no distinga entre mayúsculas y minúsculas utilizando el nombre -iname en el lugar del nombre:

$encontrar.-inamemytextfile1.txt

buscar / 3% 20copy.png

Encontrar un archivo por tipo

Para buscar un archivo por su tipo, use la opción -type con letras que también se conocen como descriptores, como f para archivos, d para directorios, l para el enlace simbólico y s para sockets.

Para buscar en todos los directorios utilice:

$encontrar.-escribeD

buscar / 4% 20copy.png

Para buscar archivos, use:

$encontrar.-escribeF

c% 20copy.png

Búsqueda de un archivo por extensión de archivo

Para buscar el archivo por patrón, por ejemplo, extensión de archivo, como mostrar todos los archivos con .txt, use el siguiente comando:

$encontrar.-nombre *.TXT

buscar / 5% 20copy.png

Todos los archivos con .txt se mostrarán junto con sus directorios correspondientes.

Encontrar y eliminar un archivo

Para buscar y eliminar un archivo, use el siguiente comando:

$encontrar.-inamemytextfile1.txt-exec rm {};

buscar / 6% 20copy.png

El comando anterior busca primero el archivo y luego lo elimina. La imagen demuestra que MyTextFile1 se ha eliminado.

Para eliminar todos los archivos con extensión .txt, puede usar el comando adjunto:

$encontrar.-nombre *.TXT-Eliminar

buscar / 7% 20copy.png

Encontrar un archivo por tamaño

El comando de búsqueda también puede buscar un archivo por tamaño. Simplemente use la opción -size junto con sus descriptores como b para bloques de 512 Kb, c para bytes, k para kilobytes, M y G para megabytes y gigabytes respectivamente:

$encontrar.-escribeF-Talla -1024c

buscar / 8% 20copy.png

El comando mencionado anteriormente busca todos los archivos con un tamaño inferior a 1024 bytes. La búsqueda se puede refinar aún más, por ejemplo, si queremos encontrar todos los archivos que tienen menos de 1 Mb, entonces usamos el siguiente comando:

$encontrar.-escribeF-Talla1 M

ab / a% 20copy.png

Para todos los archivos de más de 1 Mb, utilice el siguiente comando:

$encontrar.-escribeF-Talla+ 1 M

ab / b% 20copy.png

También se puede definir un rango de tamaño mediante el comando adjunto:

$encontrar. –escribeF-Talla+ 1 M-Talla10M

Búsqueda de archivos por permiso

Para buscar un archivo con permiso, usaremos la opción -perm, luego el código de permiso, como se muestra a continuación:

$encontrar.-permanente 664

buscar / 10% 20copy.png

Encontrar un texto dentro de archivos de texto

Para buscar texto en varios archivos de texto en su sistema, use el comando que se proporciona a continuación:

$encontrar.-escribeF-nombre *.TXT-exec sujeción'Hola'{};

buscar / 12% 20copy.png

El comando busca la palabra Hola en los archivos de texto. La salida son cadenas de texto de los archivos de texto que contienen Hello.

Búsqueda de un archivo por fecha y hora de modificación

Para acceder a un archivo por su última modificación, use el siguiente comando:

$encontrar.-escribeF-iname *.TXT-mmin+10

buscar / 13% 20copy.png

El comando anterior busca un archivo modificado por última vez hace cuatro minutos, y m significa la Modificación.

$encontrar. –escribeF-iname *.TXT-amina -10

buscar / 14% 20copy.png

El comando anterior busca un archivo al que se accedió por última vez hace 4 minutos, y a in amin significa Acceso. Para acceder a un archivo que se modificó hace cuatro días, use -mtime +4 en lugar de mmin +4.

Conclusión

El comando find en Linux es un comando muy útil que te permite buscar un archivo o directorio usando diferentes criterios, e incluso te permite modificar los archivos desde la terminal. En esta guía, observamos la sintaxis del comando find en Linux y aprendimos cómo usar el comando find para realizar varias funciones.