Comment trouver un fichier par son contenu sous Linux?

14

Comment puis-je trouver un fichier par son contenu sous Linux dans la ligne de commande?

Par exemple, je veux trouver un fichier contenant le mot "helo" sur mon ordinateur.

Gaffe
la source

Réponses:

24

Utilisation:

grep -lir "helo" /path/to/dir
quanta
la source
3

Vous pouvez créer un fichier nommé grepall dans / usr / local / bin / avec le contenu suivant:

find -type f -exec grep -q $1 {} \; -print

alors vous pouvez rechercher du contenu en utilisant grepall something

kockiren
la source
1
C'est beaucoup de frappe quand vous pouvez simplement grep -r
Matt H
Avec la commande Find, vous pouvez grep récursivement à travers les répertoires et grep dans tous les fichiers.
kockiren
1

egrep -R "hello" /path/to/dir

Adam Eberlin
la source
1

Mauvais chemin: grep "something" */*/*

Korjavin Ivan
la source
0

Si vous êtes un administrateur ou un codeur, vous pourriez envisager ripgrep au lieu de l'habituel grep.

rg helo par exemple, recherche tous les fichiers du répertoire de travail actuel (y compris les sous-dossiers).

Pour des informations plus détaillées, consultez le guide , la page de manuel ou même le code.

mbx
la source