web-dev-qa-db-fra.com

comment trouver un mot dans les fichiers texte d'un répertoire

Supposons que j’ai un répertoire nommé _file contenant deux sous-répertoires tels que _1 et _2 et sur chacun d’eux, des fichiers texte. Je veux rechercher un mot comme foo dans l'un de ces fichiers texte. Comment je peux faire ça? Je veux savoir quels fichiers texte de tout le répertoire contiennent ce mot?

31
  1. Ouvrez un terminal.
  2. Installez ack-grep en tapant Sudo apt-get install ack-grep
  3. Accédez au répertoire dans lequel vous souhaitez effectuer la recherche et tapez ack-grep foo. il répertorie toutes les correspondances dans tous les fichiers de ce répertoire.
10
Mahesh

Si vous ne souhaitez pas installer de logiciel supplémentaire, vous pouvez simplement utiliser grep dans le terminal. Pour effectuer une recherche récursive dans les répertoires, vous pouvez utiliser l'option -r (voir man grep pour plus de détails). La syntaxe que vous recherchez est probablement:

grep -r "[STRING TO SEARCH FOR]" "[DIRECTORY TO SEARCH]"

Ainsi, par exemple, si je souhaite rechercher la chaîne "asdf" dans tous les fichiers de tous les sous-répertoires de "/ tmp/testdir /", la commande ressemble à ceci:

grep -r "asdf" "/tmp/testdir/"

Les guillemets ne sont pas strictement nécessaires, mais si votre chaîne ou votre chemin de répertoire contient des espaces, vous devrez sinon les masquer à l'aide du caractère\...

62
soulsource

Vous pouvez utiliser récursif grepavec l'indicateur -l pour n'imprimer que le nom du fichier à la place de la ligne correspondante:

grep -Rl foo .

Ou, vous pouvez utiliser findname__:

find . -type f -exec grep -l foo {} +

Ou. vous pouvez utiliser extglobet normal grepname__

shopt -s extglob
grep -l foo **/*
7
terdon

Installez simplement gnome-search-tool en utilisant Sudo apt-get install gnome-search-tool
Recherchez dans le tableau de bord "rechercher des fichiers" et lancez-le.

Voir l'image ci-dessous:

enter image description here

  1. Laissez la section 'Le nom contient' vide.
  2. Sélectionnez votre dossier.
  3. Dépliez la partie "sélectionner plus d'options" et choisissez "contient le texte", puis appuyez sur Ajouter.
  4. Tapez ici le texte que vous souhaitez rechercher et cliquez sur Rechercher dans le coin inférieur droit.

Prendre plaisir.

7
Parto