2010-07-13 09:42:08 +0000 2010-07-13 09:42:08 +0000
179
179

Comment trouver les fichiers contenant un certain texte dans le Terminal

Je voudrais trouver tous les fichiers qui contiennent une certaine chaîne de texte. Comment faire dans le Terminal ?

Réponses (5)

299
299
299
2010-07-13 09:47:11 +0000
grep -r 'text goes here' path_goes_here
31
31
31
2010-08-12 22:38:59 +0000

utilisez les projecteurs

mdfind "text goes here"
mdfind -onlyin /home/user/Desktop -live "live update"

n'oubliez pas de regarder :

man mdfind
12
12
12
2016-03-03 14:07:18 +0000
  1. Par l'intermédiaire de Ack
brew install ack 
ack "text goes here"
  1. Par l'intermédiaire de find
find . |grep "text goes here"
  1. Par l'intermédiaire de grep
grep -RnslI "text goes here"
4
4
4
2017-06-01 08:00:18 +0000

Vous pouvez choisir l'une des options ci-dessous en fonction de vos goûts et de vos besoins. Supposons que vous ayez besoin de rechercher des fichiers contenant du texte - “async”, de manière récursive dans le répertoire courant, vous pouvez le faire de l'une des façons suivantes :

Utilisant grep

Utilisant ack

2
2
2
2017-06-01 15:27:29 +0000

La réponse d'Ignacio est excellente et m'a aidé à trouver les fichiers contenant certains textes. Le seul problème auquel je faisais face était que lorsque j'exécutais cette commande, tous les fichiers étaient listés, y compris un fichier où le modèle n'apparaissait pas.

No such file or directory C'est ce que je vois à côté des fichiers qui ne contiennent pas le modèle. Si, à la place, vous ajoutez -s à la commande, comme dans:grep -lr "text pattern" ./ -s ; grep -lr "text pattern" [PATH DIRECTORY] -s est utilisé, il ne vous montrera que les fichiers qui contiennent le modèle.

De même, si la commande grep -nr "text pattern" ./ -s ; grep -nr "text pattern" [PATH OF DIRECTORY] -s est utilisée, elle affiche le fichier plus le numéro de ligne, et l'occurrence du modèle.

Veuillez me corriger si ma compréhension est erronée. Référence : Comment puis-je faire en sorte que grep n'imprime pas les erreurs “No such file or directory” ?