Я ищу строку foo=
в текстовых файлах в дереве каталогов. Это на обычной машине Linux, у меня есть оболочка bash:
grep -ircl "foo=" *
В каталогах также много бинарных файлов, которые соответствуют "foo =". Поскольку эти результаты не релевантны и замедляют поиск, я хочу, чтобы grep пропустил поиск этих файлов (в основном изображений JPEG и PNG). Как бы я это сделал?
Я знаю , что существуют --exclude=PATTERN
и --include=PATTERN
варианты, но то , что это формат картины? Страница руководства grep гласит:
--include=PATTERN Recurse in directories only searching file matching PATTERN.
--exclude=PATTERN Recurse in directories skip file matching PATTERN.
Поиск по grep include , grep include exclude , grep exclude и варианты не нашли ничего подходящего
Если есть лучший способ поиска только в определенных файлах, я за все; перемещение оскорбительных файлов не вариант. Я не могу искать только определенные каталоги (структура каталогов - большой беспорядок, со всем везде). Кроме того, я ничего не могу установить, поэтому я имею дело с обычными инструментами (такими как grep или предлагаемый поиск ).
--exclude-dir=.svn
, так что grep не входит в них вообще
grep -r --exclude-dir=var "pattern" .