Comment rechercher des fichiers contenant des mots spécifiques?
Comment rechercher des fichiers contenant des mots spécifiques?
Réponses:
Avec la ligne de commande, vous avez plusieurs options. Les 3 que j'utilise le plus sont ...
locate {part_of_word}
Cela suppose que votre base de données de localisation est à jour, mais vous pouvez la mettre à jour manuellement avec: sudo updatedb
grepcomme expliqué par dr_willis. Une remarque: -Raprès grepaussi cherché dans les annuaires. Exemple:
cd\
grep -R {something_to_look_for} {where_to_look_in}
find . -name '*{part_of_word}*' -print
Où se .trouve le répertoire où vous vous trouvez actuellement et *est un caractère générique.
Oh, et vous pouvez aussi les combiner. Exemple: 
locate {something}|grep {some_part_of_something}|more
Si je me souviens bien: locateest la plus rapide (en supposant que votre base de données est à jour) et findla plus lente. Et grepc’est le plus complexe, mais aussi le plus polyvalent, puisque vous pouvez utiliser des regex.
grep -R "quoi" "où"
Exemple:
grep -R hello /home
La commande grep est couramment utilisée pour cela.
grep PATTERN nom
et grep peut effectuer des recherches très complexes.
willis@Cow:~$ grep --help
Usage: grep [OPTION]... PATTERN [FILE]...
Search for PATTERN in each FILE or standard input.
PATTERN is, by default, a basic regular expression (BRE).
Example: grep -i 'hello world' menu.h main.c
Vous pouvez utiliser greppour lister les fichiers contenant worddans le donné directory:
grep -Ril word directory
Ici: 
* -Rrecherche récursivement les fichiers dans les sous-répertoires. 
* -iIgnorer la casse du texte 
* -lAfficher les noms de fichier au lieu des portions de contenu de fichier. (note: -Lindique les noms de fichiers qui ne contiennent pas le mot).
utiliser man greppour obtenir toutes les options
-ieffectue une recherche insensible à la casse.