GNU/Linux >> Tutoriales Linux >  >> Linux

Cómo hacer una búsqueda difusa de archivos en Linux

En la forma convencional de buscar archivos o directorios en Linux, necesitamos usar exactamente el mismo nombre del archivo para una coincidencia perfecta. Hay muchas herramientas y comandos como "buscar comando" o "fd comando" para realizar las tareas de búsqueda exactas en Linux. Aquí, la búsqueda difusa de archivos en Linux se refiere a una búsqueda sin saber exactamente el nombre del archivo o directorio. Esta búsqueda difusa de archivos permite a los usuarios realizar una búsqueda de una consulta y obtener todos los resultados de búsqueda aproximadamente coincidentes.

Búsqueda aproximada de archivos en Linux

La búsqueda de archivos difusos en Linux requiere tener la herramienta FZF instalada en su máquina. Luego, puede comenzar fácilmente con la herramienta para búsquedas difusas. A través de la búsqueda aproximada, puede buscar tanto archivos como directorios. En esta publicación, veremos cómo realizar búsquedas difusas de archivos en Linux.

1. Instalación de FZF en Linux

El proceso de instalación de la herramienta FZF en una máquina Linux es fácil y directo. Los archivos del instalador ya están disponibles en el repositorio oficial de Linux. Puede ejecutar los comandos mencionados a continuación en el shell de su terminal para instalar la aplicación en su máquina Linux.

Instalar FZF en Debian/Ubuntu Linux 

sudo apt update
sudo apt install f2f

Obtener FZF en Fedora/Red Hat Linux 

$ sudo dnf install fzf

Instalar FZF en Arch Linux 

$ sudo pacman -S fzf

Si tiene algún problema al instalar la aplicación a través de la forma convencional mencionada anteriormente, puede usar el método Git de abajo. Primero, deberá clonar el repositorio de Git en su sistema. Luego puede navegar por el directorio y presionar el comando de instalación con el permiso de root.

git clone --depth 1 https://github.com/junegunn/fzf.git
cd fzf
./install

2. Métodos abreviados de teclado para las búsquedas aproximadas 

Hasta ahora, hemos visto cómo instalar la herramienta de búsqueda Fuzzy en Linux; aquí, vamos a ver los principales métodos abreviados de teclado que quizás necesite saber.

  • Ctrl+r Muestra el historial de comandos.
  • Ctrl+t Busque el nombre del archivo en $PWD
  • Alt+c Muestra el  nombre del directorio 
  • Alt+c  Activar la función de búsqueda de directorio

Aquí puede ver algunos puntos que lo ayudarán a mejorar sus búsquedas difusas en Linux.

Token Ejemplo Explicación
cadena cadena Busca una cadena.
‘cadena Buscar archivos que tengan un valor de cadena entre comillas.
^string ^LXF Puede obtener una lista de archivos que comienzan con el formato LXF por una coincidencia exacta.
.format$ .odt$ Puede obtener una lista de archivos que terminan con el formato .odt por una coincidencia exacta.
!string !dhc Hace las consultas de coincidencia exacta inversa que no incluyen el DHC.
!^string ~^LXF Realiza las búsquedas de coincidencia exacta de prefijos con una cadena.
!.format$ !.odt$ Le permite buscar en la coincidencia de sufijo inverso para aquellos elementos que no coinciden con el formato .odt

3. Introducción a la búsqueda aproximada en Linux 

Como ya tenemos la herramienta FZF instalada en el sistema Linux, ahora podemos simplemente escribir fzf en el shell del terminal y comenzar con la herramienta.

$ fzf

Puede guardar el directorio o la ruta como una exportación en su sistema que busca a través de la búsqueda aproximada con los comandos mencionados a continuación.

$ fzf >file
$ cat file
$ bat file

También puede agregar varios comandos como una forma conjugada de realizar la búsqueda aproximada en Linux.

$ find ./bin/ -type f | fzf >file
$ cat file

4. Usar Finalización Fuzzy en Bash y Zsh

Si se vuelve fanático de las búsquedas difusas en Linux, puede agregar los parámetros de búsqueda difusa a su script bash de forma temporal o permanente. El comando mencionado a continuación le permitirá iniciar la función.

$ cat **<Tab>

Las variables ambientales mencionadas a continuación también se pueden utilizar para trabajar con estas funciones.

$ unset **<Tab>
$ unalias **<Tab>
$ export **<Tab>

También puede ejecutar este comando a través de una herramienta SSH o telnet para acceso remoto. Puede realizar la búsqueda aproximada en Linux en una conexión remota con nombres y detalles de host de autocompletar editando el  /etc/hosts y ~/.ssh/config directorio y scripts.

$ ssh **<Tab>

Para finalizar todos los procesos en curso, puede ejecutar el comando de eliminación mencionado a continuación.

$ kill -9 <Tab>

Si necesita realizar cambios de forma permanente, puede editar el script de archivo que se menciona a continuación y agregar sus comandos personalizados.

/etc/hosts and ~/.ssh/config.

5. Habilite la búsqueda aproximada de archivos en Linux con el complemento Vim

Si eres fanático del editor de secuencias de comandos Vim, también puedes habilitar los parámetros de búsqueda de archivos difusos con la herramienta Vim. Puede editar el script de Vim desde el script de configuración mencionado a continuación.

set rtp+=~/.fzf

También puede actualizar las herramientas de búsqueda Fuzzy con Vim ejecutando el comando mencionado a continuación.

$ cd ~/.fzf && git pull && ./install

¡Perspectivas!

Las búsquedas difusas en Linux son divertidas y eficientes. En todo el post hemos visto cómo instalar la herramienta fzf y cómo buscar archivos en Linux con búsqueda difusa. También hemos visto algunas formas de usar la herramienta de búsqueda difusa con bash y Vim. Si necesita saber más sobre la herramienta FZF, visite esta URL de Github para una mejor comprensión.

Espero que esta publicación haya sido valiosa e informativa para usted. En caso afirmativo, comparta esta publicación con sus amigos y la comunidad de Linux. También puedes escribir tus opiniones sobre esta publicación en la sección de comunicación.


Linux
  1. Cómo administrar las capacidades de archivos de Linux

  2. Cómo encontrar un archivo en Linux

  3. Cómo crear un intercambio en Linux

  4. Cómo vaciar un archivo de registro en Linux

  5. ¿Cómo cambiar el nombre de un archivo en Linux?

Cómo verificar la suma de comprobación en Linux

Cómo cambiar el nombre de un archivo (s) en Linux

Cómo vincular un archivo en Linux

Cómo cifrar archivos en Linux

Cómo deshabilitar el intercambio en Linux

¿Cómo usar gzip en Linux?