Comment rechercher des fichiers contenant des mots spécifiques?
command-line
UAdapter
la source
la source
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
grep
comme expliqué par dr_willis. Une remarque:-R
aprèsgrep
aussi cherché dans les annuaires. Exemple: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:
locate
est la plus rapide (en supposant que votre base de données est à jour) etfind
la plus lente. Etgrep
c’est le plus complexe, mais aussi le plus polyvalent, puisque vous pouvez utiliser des regex.la source
grep -R "quoi" "où"
Exemple:
grep -R hello /home
la source
La commande grep est couramment utilisée pour cela.
grep PATTERN nom
et grep peut effectuer des recherches très complexes.
la source
Vous pouvez utiliser
grep
pour lister les fichiers contenantword
dans le donnédirectory
:Ici:
*
-R
recherche récursivement les fichiers dans les sous-répertoires.*
-i
Ignorer la casse du texte*
-l
Afficher les noms de fichier au lieu des portions de contenu de fichier. (note:-L
indique les noms de fichiers qui ne contiennent pas le mot).utiliser
man grep
pour obtenir toutes les optionsla source
-i
effectue une recherche insensible à la casse.