find . -type f | xargs file | grep text | cut -d':' -f1 | xargs grep -l "TEXTSEARCH" {}
c'est une bonne solution ? pour trouver TEXTSEARCH de façon récursive dans les seuls fichiers textuels
find . -type f | xargs file | grep text | cut -d':' -f1 | xargs grep -l "TEXTSEARCH" {}
c'est une bonne solution ? pour trouver TEXTSEARCH de façon récursive dans les seuls fichiers textuels
Vous pouvez utiliser le -r
(récursif) et -I
(ignorer les options binaires) en grep
:
$ grep -rI "TEXTSEARCH" .
-I
Traiter un fichier binaire comme s'il ne contenait pas de données correspondantes ; cela équivaut à la fonction--binary-files=without-match
option.-r
Lire tous les fichiers sous chaque répertoire, de manière récursive ; ceci est équivalent à la commande-d recurse
option.
Il est complexe et inefficace. L'outil grep intégré est capable de résoudre la question avec un seul drapeau. Cette réponse peut faire l'affaire, mais c'est une mauvaise solution, compte tenu de l'existence de l'autre. N'êtes-vous pas d'accord ?
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.