типы файлов grep на MAC

У меня есть Mac OS X snow leopard. Я использую терминал xterm для конкретной строки grep, используя эту команду grep -R --color=auto setHeader *.js но когда я запускаю эту команду я получаю сообщение об ошибке сказав

grep: *.js: No such file or directory

Итак, мой вопрос: как я могу grep для определенного типа файла на Mac?

5 ответов


лучший способ сделать это-объединить find и :

find . -name "*.js" -exec grep --color=auto setHeader {} \;

grep --include=*.js -R . --color=auto setHeader

поскольку в приведенном примере используется "тип файла = расширение файла", это должно просто работать.


это работает для меня на Mac OS 10.8:

grep --include=*.js -r setHeader .

проблема заключается в флаге"- R". При использовании этого необходимо указать каталог. Вам лучше использовать команду find:

найти . -имя.*" js "- exec grep "setHeader"' {}'\;

Если вы хотите использовать grep, просто используйте "."вместо "*.js " для шаблона файла.


в сообщении об ошибке говорится, что нет '*.файлы js в вашем текущем каталоге. Если вы хотите пересечь дерево каталогов, вы можете сделать следующее:

find <startdirectory> -name '*.js' -exec grep --color=auto setHeader '{}' ';'

конечно, вам нужно заполнить правильный startdirectory, вы можете использовать . для обозначения каталога, в котором вы находитесь.