J'ai une copie locale svn, je veux faire une recherche sur la chaîne some_string.
$ grep some_string * -r
lang/en:some_string=Some string
lang/.svn/en:some_string=Some string
Mais si on va un peu plus loin, il semble que les répertoires cachés de premier niveau soient exclus:
$ cd lang && grep some_string * -r
en:some_string=Some string
Comment puis-je supprimer les répertoires svn cachés de ma sortie, et pas seulement du premier niveau de profondeur?
$ grep some_string * -r --which_option_here?
lang/en:some_string=Some string
Réponses:
Utilisez l'
--exclude-dir
option, par exemple:De
man grep
:Notez cependant que cette
--exclude-dir
option n'est disponible que dans GNU grep. Si votregrep
ne le supporte pas, vous devrez peut-être utiliser un autre outil comme find par exemple :la source
find
version si votre grep ne prend pas en charge--exclude-dir
.--exclude-dir
, l'avez-vous essayée?J'utilise normalement ceci:
${e%\./}
supprimera le premier./
, puisgrep
supprimera tout ce qui commence par un point.la source
e#
, le texte dite%