FZF : Le bouquet final

Partage

Donnez un visage à vos recherches Linux

(Fin de la trilogie)

Vous avez appris à utiliser find pour scanner votre disque comme un détective. C’est puissant, mais avouons-le : taper des commandes de 30 caractères à chaque fois, c’est long. Et si vous pouviez filtrer vos milliers de fichiers en temps réel, à chaque pression de touche, avec une interface interactive ?

Bienvenue dans le monde de FZF « Fuzzy Finding », l’outil qui va rendre votre terminal plus rapide que votre explorateur de fichiers.

FzF : Qu'est-ce que le "Fuzzy Finding" ?

Qu’est-ce que le « Fuzzy Finding » ?

Le Fuzzy Finding (que l’on peut traduire par recherche approximative) désigne une manière intelligente de chercher une information sans exiger une correspondance exacte.

Contrairement à une recherche classique, le fuzzy finding tolère les erreurs, les approximations et les variations d’écriture.


Pourquoi le Fuzzy Finding est-il utile ?

Dans la vraie vie, les utilisateurs :

  • font des fautes d’orthographe
  • oublient une partie d’un mot
  • utilisent des synonymes
  • tapent trop vite sur mobile 📱

Le fuzzy finding permet malgré tout de trouver ce qu’ils cherchent.


Exemple simple

Recherche classique ❌

Tu cherches mathématiques
Tu tapes mathematique
Aucun résultat

Recherche avec fuzzy finding ✅

mathematique, maths, mathématique
Résultats pertinents affichés


Comment ça fonctionne ?

Le fuzzy finding repose sur plusieurs idées simples :

  • comparer la ressemblance entre les mots
  • accepter une distance entre les lettres
  • ignorer certaines différences mineures
  • parfois deviner l’intention plutôt que le mot exact

L’objectif n’est pas la perfection, mais la pertinence.


Où rencontre-t-on le Fuzzy Finding ?

Tu l’utilises déjà tous les jours, souvent sans le savoir :

  • 🔍 moteurs de recherche
  • 🧭 barres de recherche sur les sites
  • 📚 catalogues, bibliothèques, blogs
  • 💬 messageries et outils de support
  • 📱 recherches sur mobile (claviers imprécis)

Fuzzy Finding vs recherche exacte

Recherche exacteFuzzy Finding
Mot strictement identiqueMot ressemblant
Sensible aux fautesTolère les erreurs
Résultats parfois videsRésultats utiles
RigideIntelligent et souple

En résumé

Le Fuzzy Finding permet de :

  • rendre une recherche plus humaine
  • améliorer l’expérience utilisateur
  • éviter les frustrations
  • retrouver une information même imparfaite

👉 Ce n’est pas chercher juste, c’est chercher malin.

Installation rapide

sudo apt install fzf

Le test du « Wow » : Votre terminal change de dimension

Regardez la fluidité : le filtrage s’adapte à chaque pression de touche. C’est ça, la puissance du Fuzzy Finding.

Vous avez installé FZF ? Oubliez tout ce que vous savez sur la recherche classique. Ne tapez pas de chemin, ne cherchez pas d’options compliquées.

Tapez simplement ces trois lettres dans votre dossier personnel : fzf

L’effet magique

À l’instant où vous appuyez sur Entrée, votre terminal se transforme. Une liste apparaît, et un curseur clignote.

  1. Commencez à taper : Tapez quelques lettres, n’importe lesquelles, même si elles ne se suivent pas (ex: docbre pour chercher Documents/Bretagne).
  2. Observez : La liste diminue en temps réel à chaque pression de touche. C’est fluide, c’est instantané, c’est le « Fuzzy Finding ».
  3. Naviguez : Utilisez les flèches haut/bas pour choisir votre fichier.
  4. Validez : Appuyez sur Entrée. FZF se ferme et affiche le chemin complet du fichier sélectionné.

💡 Pourquoi c’est un « Wow » ? Parce qu’en moins de 2 secondes, vous venez de trouver un fichier caché dans un sous-dossier complexe sans jamais avoir utilisé votre souris, ni même connu l’emplacement exact du document.

⚡ Les Combos : Transformez votre terminal en moteur de recherche

C’est ici que la magie opère. En utilisant le Pipe (|), vous envoyez les résultats de vos outils classiques dans l’entonnoir FZF. Voici les deux duos que vous utiliserez tous les jours :

1. Le duo Chirurgical : Find + FZF

C’est pour qui ? Ceux qui cherchent un fichier précis en éliminant le « bruit » autour.

  • La commande : find . -name "*.jpg" -o -name "*.png" | fzf
  • Pourquoi ça change tout ? Au lieu de chercher une image parmi 3000 fichiers (scripts, textes, dossiers système), Find fait le tri préalable. FZF ne vous affiche alors qu’une liste « propre » d’images.
  • Le bénéfice : Vous ne filtrez que ce qui est pertinent. Gain de temps et de clarté visuelle.

2. Le duo Intelligent : Grep + FZF

C’est pour qui ? Ceux qui cherchent une information à l’intérieur des fichiers (une variable, une fonction, une erreur).

  • La commande : grep -rn "votre_recherche" . | fzf
  • Pourquoi ça change tout ? Normalement, un grep récursif vous inonde de lignes de texte illisibles. En l’envoyant dans FZF, vous transformez ce chaos en une liste interactive.
  • Le bénéfice : Vous pouvez affiner votre recherche Grep en tapant quelques lettres de plus dans FZF pour isoler la ligne exacte. L’option -n vous donne même le numéro de la ligne pour savoir où intervenir.

En résumé : Quel combo choisir ?

Si vous cherchez…Utilisez le combo…Le rôle de FZF ici :
Un contenant (Fichier, Image, PDF)Find + FZFFiltrer parmi des noms de fichiers.
Un contenu (Ligne de code, Texte, Log)Grep + FZFFiltrer parmi des lignes de texte.

La Logique de l’Entonnoir : Comprendre le « Pipe »

Pour maîtriser FZF, il faut comprendre un concept fondamental de Linux : le Pipe (représenté par la barre verticale |).

Imaginez que vos commandes sont des ouvriers spécialisés :

  1. L’ouvrier de gauche (Find ou Grep) extrait une montagne de données brutes.
  2. Le Pipe (|) sert de tuyau pour déverser cette montagne directement dans l’outil suivant.
  3. L’ouvrier de droite (FZF) récupère tout ce qui arrive et fait office d’entonnoir.

FZF ne cherche pas, il trie !

C’est la nuance la plus importante : FZF n’est pas un moteur de recherche qui fouille votre disque dur de lui-même. C’est un filtre interactif.

  • Si vous lui envoyez une liste de 10 000 fichiers via find, il vous aidera à en choisir un.
  • Si vous lui envoyez le texte complet d’un livre via cat, il vous aidera à trouver la bonne phrase.
  • Si vous lui envoyez votre liste de courses, il vous aidera à retrouver « Tomates ».

FZF prend une sortie textuelle illisible et la transforme en une interface où vous pouvez taper pour choisir. C’est l’outil qui donne un visage humain à la puissance brute de Linux.

FZF comme « sélecteur » : Ne tapez plus jamais de noms de fichiers

1. Éditer un fichier « au feeling »

Vous voulez modifier un script ou un fichier de configuration, mais vous n’avez pas envie de naviguer dans vos dossiers à la souris ou de taper le chemin complet /home/user/documents/projets/site/index.html ?

Tapez simplement : gnome-text-editor $(fzf)

  • L’action : FZF s’ouvre dans votre terminal. Vous tapez « index », vous validez.
  • Le résultat : L’éditeur de texte d’Ubuntu s’ouvre instantanément avec le bon fichier déjà chargé. C’est le confort du graphique avec la rapidité du terminal.

2. Naviguer dans votre site comme un pro (Sitemap + FZF)

Si vous gérez un site web (comme site2wouf.fr), vous avez forcément un fichier sitemap.xml qui contient la liste de toutes vos pages. Au lieu de chercher une URL dans votre interface d’administration, utilisez FZF !

Tapez cette commande magique : xdg-open $(grep -oP 'https?://[^<]+' sitemap.xml | fzf)

  • L’étape 1 (Grep) : Il extrait proprement toutes les URLs du fichier XML en ignorant les balises <loc>, <url>, etc.
  • L’étape 2 (FZF) : Il vous affiche la liste de toutes les pages de votre site. Tapez « contact » ou « tuto » pour filtrer.
  • L’étape 3 (xdg-open) : Dès que vous validez, votre navigateur (Firefox ou Chrome) ouvre instantanément la page choisie.

💡 Pourquoi c’est brillant ? Vous venez de transformer un fichier technique illisible en un menu de navigation ultra-rapide pour votre propre site.

🔗 Pour aller plus loin (Liens utiles)

Si vous voulez approfondir votre maîtrise de FZF et de la ligne de commande, voici les ressources indispensables :


🚀 Prochaine étape : Ne tapez plus jamais ces commandes !

Vous trouvez ces commandes géniales mais un peu longues à mémoriser ? Vous avez raison. Dans le monde Linux, on ne tape jamais deux fois la même chose.

Imaginez qu’au lieu de taper xdg-open $(grep -oP 'https?://[^<]+' sitemap.xml | fzf), vous n’ayez qu’à taper un seul mot : map. Ou juste fe pour ouvrir votre éditeur de texte préféré via FZF.

C’est ce qu’on appelle les Alias.

Dans mon prochain article, je vous montrerai comment personnaliser votre fichier .bashrc pour créer vos propres raccourcis « magiques ». Nous transformerons ces combinaisons complexes en commandes ultra-courtes pour faire de vous un véritable sprinter du clavier.


Partage

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *