Réponse rapide
Rechercher dans des fichiers texte : utilisez grep ou ripgrep pour le texte brut, le code, les journaux et les fichiers de configuration.
Rechercher dans des documents : utilisez une application de bureau pour les fichiers PDF, Word, Excel, LibreOffice et bien plus encore.
Vous recherchez plutôt un fichier par son nom : utilisez find ou locate.
J’ai testé un large éventail de commandes et d’applications Linux de recherche de fichiers — bien plus que celles présentées ici — et sélectionné les méthodes les plus pratiques et efficaces. J’ai testé les exemples sous Ubuntu avec le même ensemble de fichiers TXT, PDF, ODT, DOCX et autres utilisé tout au long de l’article.
Utilisez d’abord le tableau ci-dessous pour choisir la méthode adaptée, puis consultez la section correspondante.
Quelle méthode de recherche Linux devriez-vous utiliser ?
La meilleure méthode dépend principalement du type de fichiers dans lesquels vous devez effectuer une recherche.
| Tâche | Meilleure option |
| Rechercher dans des fichiers texte avec une commande Linux standard | grep |
| Rechercher rapidement dans des fichiers texte situés dans de grands dossiers | ripgrep |
| Trouver un fichier par son nom, et non par son contenu | find ou locate |
| Rechercher dans des fichiers PDF, Word, LibreOffice, Excel et d’autres documents | SeekFast |
| Utiliser un outil gratuit et open source de recherche indexée dans des documents | Recoll ou DocFetcher |
Les outils grep et ripgrep recherchent dans le contenu des fichiers texte, tandis que find et locate recherchent les noms et les chemins de fichiers. Ces outils sont excellents pour les fichiers techniques, mais ils ne permettent pas de rechercher de manière fiable dans des formats de documents complexes. C’est pourquoi la bonne solution pour un dossier rempli de documents diffère de celle qui convient à un dossier rempli de journaux ou de code.
Rechercher du texte dans des fichiers avec la commande grep
La commande grep est l’outil Linux standard pour trouver du texte dans des fichiers. Elle convient particulièrement au texte brut, au code source, aux journaux, aux fichiers CSV, aux fichiers Markdown et aux fichiers de configuration.
Pour rechercher un mot dans les fichiers .txt du dossier actuel, utilisez :
grep "budget" *.txt
Pour effectuer une recherche dans un dossier et tous ses sous-dossiers, utilisez la recherche récursive :
grep -R "budget" ~/Documents/stories
En pratique, j’ajoute généralement les numéros de ligne et les noms de fichiers, car ils facilitent l’utilisation des résultats :
grep -RIn "budget" ~/Documents/stories
Voici la signification des options :
- -R effectue une recherche récursive dans les dossiers.
- -I ignore les fichiers binaires.
- -n affiche les numéros de ligne.

Recherche insensible à la casse
Pour ignorer les différences entre majuscules et minuscules, ajoutez -i :
grep -RIn -i "report" ~/Documents/stories
Cette commande peut trouver « report », « Report » et « REPORT ».
Rechercher uniquement des mots entiers
Pour trouver un mot entier, ajoutez -w :
grep -RIn -w "policy" ~/Documents/stories
Cela évite les correspondances à l’intérieur de mots plus longs, comme « policyholder ».
Rechercher uniquement dans certains types de fichiers
Pour effectuer une recherche uniquement dans les fichiers possédant une certaine extension, utilisez --include :
grep -RIn --include="*.txt" "budget" ~/Documents/stories
Pour plusieurs extensions, répétez l’option :
grep -RIn --include="*.txt" --include="*.md" "budget" ~/Documents/stories
C’est utile pour les dossiers qui contiennent de nombreux types de fichiers lorsque vous souhaitez rechercher uniquement dans les fichiers textuels.
Exclure des dossiers de la recherche
Les grands dossiers contiennent souvent des répertoires dans lesquels vous ne souhaitez pas effectuer de recherche, comme archive, drafts ou des sauvegardes. Vous pouvez les exclure comme ceci :
grep -RIn --exclude-dir="archive" --exclude-dir="drafts" "risk" ~/Documents/stories
Cela rend les résultats plus lisibles et peut accélérer considérablement la recherche.
Rechercher une expression exacte ou plusieurs chaînes
Pour rechercher une expression exacte, placez-la entre guillemets :
grep -RIn "sales report" ~/Documents/stories
Pour rechercher l’une de plusieurs chaînes, ajoutez une option -e pour chaque chaîne :
grep -RIn -e "sales" -e "budget" -e "payment" ~/Documents/stories
Vous pouvez également utiliser des expressions régulières étendues avec -E :
grep -RInE "customer|product|service" ~/Documents/stories
Les deux commandes trouvent une ligne contenant au moins l’une des chaînes. Si vous avez besoin de fichiers contenant à la fois « sales » et « payment », même sur des lignes différentes, filtrez les noms de fichiers en deux étapes :
grep -RIlZ "sales" ~/Documents/stories | xargs -0 -r grep -Il "payment"

Ce sont les utilisations les plus courantes de la commande grep. Pour consulter la documentation complète, reportez-vous au manuel de GNU grep.
Quand grep ne suffit pas
La commande grep est puissante, mais elle reste un outil de recherche en texte brut. Elle fonctionne généralement bien avec les fichiers stockés sous forme de texte lisible. Elle ne constitue pas une bonne solution générale pour les documents Word, les feuilles de calcul Excel, les fichiers LibreOffice, les PDF, les eBooks ou d’autres formats de documents.
Si vous essayez d’utiliser grep dans un dossier rempli de documents de différents types, vous manquerez souvent des correspondances importantes ou obtiendrez une sortie illisible. Dans ces cas, passez directement aux outils de recherche de documents.
Utiliser ripgrep pour une recherche plus rapide en ligne de commande
L’outil ripgrep, généralement exécuté avec la commande rg, est un outil moderne de recherche en ligne de commande. Le guide officiel de ripgrep explique qu’il recherche par défaut de manière récursive dans les répertoires et applique un filtrage automatique. Pour les recherches récursives dans de grands dossiers de code et de texte, il est souvent plus rapide que la commande grep standard.
Pour effectuer une recherche dans le dossier actuel et ses sous-dossiers, utilisez :
rg "budget"
Pour effectuer une recherche dans un dossier précis :
rg "budget" ~/Documents/stories
Pour rechercher uniquement dans certains types de fichiers :
rg "budget" -g "*.txt" ~/Documents/stories
L’outil ripgrep respecte également .gitignore par défaut, ce qui est utile dans les projets de code source, car il ignore automatiquement de nombreux fichiers générés ou non pertinents.
Utilisez ripgrep lorsque vous recherchez dans du code, des journaux, des fichiers Markdown, des fichiers de configuration ou d’autres fichiers en texte brut. Pour les fichiers PDF, Word, LibreOffice, Excel et autres documents, utilisez plutôt un outil de recherche de documents.

Lequel utiliser : grep ou ripgrep ?
Les deux outils recherchent dans le contenu en texte brut, mais ils conviennent à des méthodes de travail légèrement différentes :
- Utilisez grep si vous souhaitez une commande standard déjà disponible sur presque tous les systèmes Linux.
- Utilisez ripgrep pour effectuer des recherches récursives rapides dans les dépôts de code et les grands dossiers de texte.
- L’outil ripgrep recherche dans les sous-dossiers par défaut et respecte
.gitignore, tandis que la commande grep nécessite des options de recherche récursive et effectue des recherches plus littérales, sauf si vous excluez certains chemins. - Pour les fichiers PDF, Word, Excel, LibreOffice et les autres formats de documents complexes, utilisez plutôt un outil de recherche de documents.
Comment installer ripgrep sur Ubuntu, Mint, Fedora, Debian et d’autres distributions Linux
Les commandes de recherche de ripgrep sont identiques sur toutes les distributions Linux. Seule la commande d’installation change en fonction du gestionnaire de paquets. Les commandes ci-dessous suivent les instructions officielles d’installation de ripgrep.
| Distribution | Installer ripgrep |
| Ubuntu, Linux Mint, Debian | sudo apt install ripgrep |
| Fedora | sudo dnf install ripgrep |
| openSUSE | sudo zypper install ripgrep |
| Arch Linux | sudo pacman -S ripgrep |
Trouver des fichiers et des répertoires par leur nom sous Linux
Si vous connaissez tout ou partie du nom d’un fichier, utilisez la commande find. Le manuel de GNU Findutils décrit ses filtres par nom de fichier, date, taille et autres critères. Cette commande ne recherche pas le texte contenu dans les fichiers ; pour cela, utilisez grep ou ripgrep.
Pour trouver dans le dossier stories et ses sous-dossiers les fichiers dont le nom contient un mot particulier, utilisez :
find ~/Documents/stories -type f -iname "*profit*"
Utilisez -iname pour une correspondance partielle insensible à la casse :
find ~/Documents/stories -type f -iname "*shopping*"
Les astérisques correspondent à n’importe quels caractères placés avant ou après « shopping ». Pour trouver un répertoire plutôt qu’un fichier, remplacez -type f par -type d :
find ~/Documents/stories -type d -iname "*archive*"
Vous pouvez également filtrer les fichiers par extension, date de modification ou taille :
find ~/Documents/stories -type f -iname "*.pdf"
find ~/Documents/stories -type f -mtime -7
find ~/Documents/stories -type f -size +100M
Ces commandes trouvent respectivement les fichiers PDF, les fichiers modifiés au cours des sept derniers jours environ et les fichiers de plus de 100 Mo.
Trouver des fichiers plus rapidement avec locate
La commande locate effectue ses recherches dans une base de données de noms de fichiers au lieu d’analyser le système de fichiers à chaque fois. La recherche de noms de fichiers est donc généralement beaucoup plus rapide qu’avec find. Le manuel de plocate explique le fonctionnement de cette recherche indexée :
locate -i "profit"
Comme locate utilise un index, les fichiers très récents peuvent ne pas apparaître avant la mise à jour de la base de données. Sur les systèmes où vous êtes autorisé à l’actualiser, utilisez :
sudo updatedb
Utilisez find lorsque vous avez besoin de résultats à jour ou de filtres détaillés. Utilisez locate lorsque vous souhaitez rechercher aussi rapidement que possible le nom d’un fichier existant dans les emplacements indexés.


Meilleurs outils de recherche de documents pour Linux
Les outils grep et ripgrep sont conçus pour le texte brut. Pour effectuer des recherches dans des fichiers PDF, Word, Excel, LibreOffice, des eBooks et d’autres formats, utilisez l’une des applications de recherche de documents ci-dessous ; les PDF numérisés contenant uniquement des images nécessitent d’abord une reconnaissance optique de caractères (OCR).
SeekFast est particulièrement adapté si vous souhaitez rechercher dans des dossiers contenant différents types de documents, prévisualiser les phrases correspondantes et afficher des résultats classés par pertinence sans utiliser le terminal. Il est particulièrement pratique lorsque vous devez rechercher dans un dossier nouveau ou fréquemment modifié.
Recoll et DocFetcher sont de bons choix si vous préférez les logiciels gratuits et open source et acceptez de créer un index au préalable. L’indexation exige une certaine préparation, mais elle peut faciliter les recherches répétées dans une collection de documents déjà établie.
L’application de bureau ChatGPT adopte une approche différente. Elle peut travailler avec les dossiers que vous choisissez, répondre à des questions en langage naturel, comparer des fichiers et résumer les résultats. Il est préférable de l’utiliser comme outil complémentaire lorsque vous devez comprendre les informations, plutôt que comme seul outil pour des recherches exhaustives de correspondances exactes.
SeekFast
SeekFast est un outil de recherche de documents pour Windows, macOS et Linux. Il est conçu pour rechercher dans de grandes collections de documents plutôt que seulement dans des fichiers en texte brut depuis le terminal.
Son principal avantage est sa simplicité d’utilisation. Vous choisissez un dossier, saisissez les mots à rechercher et consultez les phrases correspondantes avant d’ouvrir chaque fichier. C’est utile lorsque vous ne connaissez pas le nom exact du fichier et devez effectuer une recherche dans de nombreux documents.

SeekFast est particulièrement utile lorsque votre dossier contient différents types de documents, car il peut rechercher dans de nombreux formats et classer les résultats par pertinence. Son utilisation se rapproche ainsi davantage d’une recherche sur le Web que d’une recherche traditionnelle de correspondance exacte dans des fichiers.
Ses principales fonctionnalités comprennent :
- Recherche de documents - effectuez des recherches dans plus de 120 formats de fichiers pris en charge, notamment PDF, Word, LibreOffice, Excel, les fichiers texte et les eBooks.
- Aperçu des phrases correspondantes - consultez le texte pertinent avant d’ouvrir le fichier.
- Résultats classés par pertinence - les fichiers présentant les meilleures correspondances apparaissent plus haut dans les résultats.
- Recherche avec plusieurs mots-clés - trouvez des documents même lorsque les mots ne sont pas placés les uns à côté des autres.
- Interface graphique - nul besoin de construire des commandes de terminal pour les tâches courantes de recherche de documents.
Avantages
- Beaucoup plus pratique que grep pour les dossiers contenant de véritables documents.
- Fonctionne bien lorsque vous vous souvenez de mots du document, mais pas du nom du fichier.
- Affiche le contexte afin que vous puissiez évaluer les résultats avant d’ouvrir les fichiers.
- Utile pour les dossiers mixtes contenant des fichiers PDF, Office, LibreOffice, texte et d’autres formats.
Inconvénients
- La version gratuite de SeekFast est limitée à la recherche dans 50 fichiers à la fois.
- Il n’est pas destiné à remplacer grep ou ripgrep pour les recherches dans le code source.
- Il ne prend pas en charge les méthodes de travail avancées avec des expressions régulières, contrairement aux outils spécialisés en ligne de commande.
Si votre principale tâche consiste à rechercher dans de nombreux documents plutôt que dans du code ou des fichiers journaux, téléchargez SeekFast et essayez-le avec l’un de vos dossiers de documents.
Recoll
Recoll est un outil gratuit et open source de recherche sur le bureau pour Linux et d’autres systèmes de type Unix. Il utilise un index, ce qui signifie qu’il commence par analyser les dossiers que vous choisissez, puis vous permet d’y effectuer rapidement des recherches.

La prise en charge de certains formats de documents dépend des applications auxiliaires installées sur votre système. C’est un bon choix si vous souhaitez un outil open source de recherche indexée sur le bureau et que consacrer un peu de temps à sa configuration ne vous dérange pas.
Avantages
- Gratuit et open source.
- Fonctionne bien comme outil de recherche indexée sur le bureau Linux.
- Peut rechercher dans de nombreux formats de documents avec les programmes auxiliaires appropriés.
Inconvénients
- L’indexation et la configuration initiales peuvent prendre du temps.
- Son utilisation peut sembler technique aux utilisateurs occasionnels.
- La prise en charge des formats de documents peut dépendre des paquets système installés.
DocFetcher
DocFetcher est une application gratuite et open source de recherche sur le bureau pour Linux, Windows et macOS. DocFetcher Pro est une version payante distincte dotée de fonctionnalités supplémentaires. Comme Recoll, il fonctionne en créant des index pour les dossiers que vous choisissez.

DocFetcher prend en charge les formats de documents courants tels que PDF, Microsoft Office, OpenDocument, HTML et le texte brut. Il peut être utile si vous recherchez un outil multiplateforme gratuit et acceptez de créer des index avant d’effectuer vos recherches.
Avantages
- L’édition standard de DocFetcher est gratuite et open source.
- Disponible pour Linux, Windows et macOS.
- Peut afficher des aperçus du texte des documents indexés.
Inconvénients
- Nécessite la création d’un index avant de pouvoir effectuer une recherche dans le contenu d’un dossier.
- L’interface semble plus ancienne que celle de nombreux outils de recherche modernes.
- Moins pratique si vous recherchez souvent dans des dossiers ponctuels sans préparer d’index.
Application de bureau ChatGPT
L’application de bureau ChatGPT est disponible en version préliminaire pour les distributions Linux prises en charge. Ce n’est pas un programme traditionnel de recherche de fichiers. Il s’agit plutôt d’un espace de travail basé sur l’IA capable de travailler avec les fichiers contenus dans les dossiers que vous choisissez.
Pour l’utiliser avec des fichiers locaux, ouvrez un dossier local dans ChatGPT Work ou Codex et accordez l’accès aux fichiers que vous souhaitez utiliser. Vous pouvez ensuite poser des questions en langage naturel, comme :
- « Trouve les documents qui traitent des risques commerciaux. »
- « Compare les rapports de ventes et présente les différences les plus importantes. »
- « Trouve les informations relatives à ce projet et résume-les. »

Cette approche est particulièrement utile lorsque vous ne vous souvenez pas de la formulation exacte. ChatGPT peut vous aider à effectuer des recherches par sens, à relier des informations provenant de plusieurs fichiers, à résumer ce qu’il trouve et à expliquer les résultats. Codex peut également rechercher et analyser des projets de code source.
Avantages
- Accepte les questions en langage naturel plutôt qu’uniquement les mots-clés ou les expressions régulières.
- Peut résumer, comparer et interpréter des informations provenant de plusieurs fichiers.
- Utile lorsque l’étape suivante consiste à comprendre les résultats, et pas seulement à localiser une expression.
Inconvénients
- Il n’est pas conçu pour garantir la détection de chaque occurrence exacte ; utilisez donc grep ou ripgrep lorsque l’exhaustivité est essentielle.
- Il n’offre pas la même méthode dédiée de recherche indexée que SeekFast, Recoll ou DocFetcher.
- La version Linux est encore en version préliminaire et ne prend officiellement en charge que certaines distributions.
- Il nécessite un compte ChatGPT et utilise des services en ligne au lieu de fonctionner entièrement hors ligne. Consultez la manière dont OpenAI utilise les données de ChatGPT et de Codex ainsi que vos exigences en matière de confidentialité avant de l’utiliser avec des documents sensibles.
Utilisez ChatGPT en complément des outils de recherche conventionnels : grep et ripgrep conviennent mieux aux recherches de texte exactes, les applications de recherche de documents sont plus adaptées à la consultation de collections avec des résultats prévisibles, et ChatGPT est utile lorsque vous souhaitez comprendre, comparer ou résumer les informations trouvées.
Conclusion
Dans cet article, j’ai présenté les méthodes qui ont donné les meilleurs résultats lors de mes tests pour trouver des fichiers et rechercher dans leur contenu sous Linux. Cependant, les utilisateurs de Linux ont souvent leurs propres outils et méthodes de travail préférés. Quelle méthode utilisez-vous ? Ai-je oublié une commande ou une application utile ?
Vous pouvez partager votre expérience de l’une des manières suivantes :
- Laissez un commentaire à l’aide du formulaire ci-dessous.
- Participez à notre discussion sur Reddit.
Questions fréquentes
1. Comment trouver un fichier par son nom sous Linux ?
Utilisez la commande find. Par exemple :
find ~/Documents/stories -type f -iname "*profit*"
Cette commande recherche dans le dossier stories et ses sous-dossiers les noms de fichiers contenant « profit », sans tenir compte de la casse.
2. Quelle est la différence entre find et grep ?
La commande find recherche des noms de fichiers, des chemins et des propriétés de fichiers. La commande grep recherche du texte stocké dans des fichiers en texte brut. Si vous connaissez le nom du fichier, utilisez find ; si vous vous souvenez de mots contenus dans le fichier, utilisez grep ou un outil de recherche de documents.
3. Dois-je utiliser find ou locate ?
Utilisez find pour obtenir des résultats à jour et appliquer des filtres détaillés. Utilisez locate pour rechercher plus rapidement un nom de fichier dans un index préalablement créé. Les fichiers récemment créés peuvent ne pas apparaître dans locate tant que sa base de données n’a pas été mise à jour.
4. Comment rechercher du texte dans tous les fichiers d’un dossier Linux ?
La commande grep -R est le choix standard. Par exemple :
grep -RIn "budget" ~/Documents/stories
Cette commande convient particulièrement aux fichiers en texte brut, au code source, aux journaux et aux fichiers de configuration.
5. Comment effectuer également une recherche dans les sous-dossiers ?
Utilisez la recherche récursive avec grep -R :
grep -RIn "budget" ~/Documents/stories
Cette commande recherche dans le dossier stories et ses sous-dossiers, ignore les fichiers binaires et affiche les numéros de ligne.
6. Comment rechercher uniquement dans certains types de fichiers ?
Utilisez --include. Par exemple :
grep -RIn --include="*.txt" "budget" ~/Documents/stories
Vous pouvez répéter --include pour plusieurs extensions.
7. Comment exclure des dossiers d’une recherche grep ?
Utilisez --exclude-dir. Par exemple :
grep -RIn --exclude-dir="archive" --exclude-dir="drafts" "risk" ~/Documents/stories
8. Comment rechercher plusieurs mots possibles ?
Ajoutez une option -e pour chaque chaîne. Par exemple :
grep -RIn -e "sales" -e "budget" -e "payment" ~/Documents/stories
Cette commande trouve les lignes contenant l’une des chaînes.
9. ripgrep est-il meilleur que grep ?
L’outil ripgrep est souvent plus rapide et plus pratique pour les recherches récursives dans de grands dossiers de code et de texte, tandis que la commande grep est disponible par défaut sur presque tous les systèmes Linux et convient parfaitement aux recherches ordinaires dans du texte. Aucun des deux n’est un outil général de recherche de documents.
10. Pourquoi grep ne trouve-t-il pas le texte contenu dans mes fichiers PDF ou Word ?
La commande grep est conçue pour le texte brut. Les fichiers PDF, Word, LibreOffice et Excel stockent le texte dans des formats plus complexes. grep peut donc manquer des correspondances ou afficher une sortie illisible. Utilisez un outil de recherche de documents pour ces fichiers.
11. Quelle est la meilleure méthode pour rechercher dans des fichiers PDF, Word et LibreOffice sous Linux ?
Utilisez un outil de recherche conçu pour les documents. SeekFast est pratique si vous souhaitez obtenir des aperçus et des résultats classés par pertinence. Recoll et DocFetcher sont de bonnes solutions open source si vous préférez la recherche indexée sur le bureau.
12. SeekFast fonctionne-t-il sous Linux ?
Oui. SeekFast possède une version Linux et permet de rechercher dans de nombreux formats de documents à partir d’une interface graphique.
13. Dois-je utiliser grep, ripgrep ou SeekFast ?
Utilisez grep pour les recherches ordinaires dans du texte brut. Utilisez ripgrep pour effectuer des recherches récursives rapides dans des dossiers de code et de texte. Utilisez SeekFast lorsque vous devez rechercher dans des fichiers PDF, Word, LibreOffice, Excel et d’autres documents avec des aperçus.

