769 votes

Utiliser grep pour trouver les fichiers qui ne contiennent pas un modèle de chaîne donné

J'utilise la commande suivante dans mon application web pour trouver tous les fichiers du répertoire courant qui contiennent la chaîne foo (en omettant les répertoires svn).

 find .  -not  -ipath '.*svn*' -exec  grep -H -E -o  "foo"  {} \; > grep_results.txt
 

Comment puis-je trouver les fichiers qui ne contiennent pas le mot foo ?

1096voto

ghostdog74 Points 86060

Si votre grep a l’option-L :

53voto

Andy Lester Points 34051

S’il vous plaît jeter un oeil à ack à http://beyondgrep.com/. Il fait l’exclusion de .svn pour vous automatiquement, vous donne regexes de Perl et est un simple téléchargement d’un seul programme Perl. L’équivalent de ce que vous recherchez doit être, ack :

32voto

Senthil Kumar Points 1372

Enfin, j’ai bien compris cela en utilisant comme suggéré par un ami :

Il me donne tous les fichiers qui a zéro match pour `` :)

17voto

user999305 Points 313

J’ai utilisé le texte suivant :

Exclut la nécessité de la Rechercher pour filtrer les dossiers svn en utilisant un second grep.

5voto

Johnny Points 31

J’ai eu la chance avec

Mes tentatives avec grep - v m’a donné toutes les lignes sans « foo »

Prograide.com

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.

Powered by:

X