Вопросы с тегом «grep»

grep - это утилита для поиска текста в командной строке, изначально написанная для Unix. Он использует регулярные выражения для сопоставления текста и обычно используется в качестве фильтра в конвейерах. Используйте этот тег, только если ваш вопрос касается программирования с использованием grep или API на основе grep. Вопросы, касающиеся использования или устранения неполадок с параметрами командной строки grep, не относятся к теме.

5260
Как найти все файлы, содержащие определенный текст в Linux?

Хотите улучшить этот пост? Предоставьте подробные ответы на этот вопрос, включая цитаты и объяснение того, почему ваш ответ правильный. Ответы без достаточной детализации могут быть отредактированы или удалены. Я пытаюсь найти способ сканировать всю систему Linux на наличие всех файлов, содержащих...

1435
Как выполнить поиск (поиск) зафиксированного кода в истории Git

Я удалил файл или некоторый код в файле когда-то в прошлом. Могу ли я получить доступ к содержимому (не к сообщениям о коммитах)? Очень плохим решением является поиск в журнале: git log -p | grep <pattern> Однако это не сразу возвращает хеш коммита. Я играл git...

1069
Как я могу использовать grep для отображения только имен файлов в Linux?

Как я могу использовать, grepчтобы показать только имена файлов (без встроенных совпадений) в Linux? Я обычно использую что-то вроде: find . -iname "*php" -exec grep -H myString {} \; Как я могу просто получить имена файлов (с путями), но без совпадений? Должен ли я использовать xargs? Я не видел...

993
Отрицательное сопоставление с использованием grep (сопоставление строк, не содержащих foo)

Я пытался выработать синтаксис этой команды: grep ! error_log | find /home/foo/public_html/ -mmin -60 ИЛИ: grep '[^error_log]' | find /home/baumerf/public_html/ -mmin -60 Мне нужно увидеть все файлы, которые были изменены, кроме названных error_log. Я читал об этом здесь , но нашел только один...

982
Как я могу трубу stderr, а не stdout?

У меня есть программа, которая записывает информацию в stdoutи stderr, и мне нужно grepпройти через то, что поступает в stderr , игнорируя stdout . Конечно, я могу сделать это в 2 этапа: command > /dev/null 2> temp.file grep 'something' temp.file но я бы предпочел иметь возможность делать это...

966
grep, но только определенные расширения файлов

Я работаю над написанием некоторых сценариев для grepопределенных каталогов, но эти каталоги содержат всевозможные типы файлов. Я хочу grepпросто .hи .cppсейчас, но, возможно, несколько других в будущем. Пока что у меня есть: { grep -r -i CP_Image ~/path1/; grep -r -i CP_Image ~/path2/; grep -r -i...

780
Используйте синтаксис grep --exclude / - include, чтобы не просматривать определенные файлы

Я ищу строку foo=в текстовых файлах в дереве каталогов. Это на обычной машине Linux, у меня есть оболочка bash: grep -ircl "foo=" * В каталогах также много бинарных файлов, которые соответствуют "foo =". Поскольку эти результаты не релевантны и замедляют поиск, я хочу, чтобы grep пропустил поиск...

730
Как «grep» непрерывный поток?

Возможно ли использовать grepнепрерывный поток? Я имею в виду что-то вроде tail -f <file>команды, но с grepвыводом, чтобы сохранить только те строки, которые меня интересуют. Я пытался, tail -f <file> | grep patternно кажется, что grepможет быть выполнено только после tailокончания, то...

685
Может ли grep показывать только те слова, которые соответствуют шаблону поиска?

Есть ли способ заставить grep выводить «слова» из файлов, которые соответствуют поисковому выражению? Если я хочу найти все экземпляры, скажем, «th» в нескольких файлах, я могу сделать: grep "th" * но на выходе будет что-то вроде (жирным шрифтом - я); некоторые-текст-файл: кот сидел на за мат...

623
Как выполнить Git коммитов diff или содержимого для определенного слова?

В репозитории Git-кода я хочу перечислить все коммиты, которые содержат определенное слово. Я пробовал это git log -p | grep --context=4 "word" но это не обязательно возвращает мне имя файла (если оно не менее 5 строк от слова, которое я искал. Я также пытался git grep "word" но это дает мне только...

542
Как я могу использовать grep, чтобы найти слово в папке?

В Windows я бы сделал поиск для поиска слова внутри папки. Точно так же я хочу знать, встречается ли определенное слово в каталоге, содержащем много подкаталогов и файлов. Мои поиски для Grep синтаксиса показывает , я должен указать имя файла, то есть grep string filename. Теперь я не знаю имя...

509
Colorized grep - просмотр всего файла с выделенными совпадениями

Я считаю , grep«s --color=alwaysфлаг , чтобы быть чрезвычайно полезным. Однако grep печатает только строки с совпадениями (если только вы не запросите контекстные строки). Учитывая, что каждая печатаемая строка имеет соответствие, выделение не добавляет столько возможностей, сколько могло бы. Мне...

380
Захват групп из Grep RegEx

У меня есть этот маленький скрипт в sh(Mac OSX 10.6) для просмотра массива файлов. Google перестал быть полезным на этом этапе: files="*.jpg" for f in $files do echo $f | grep -oEi '[0-9]+_([a-z]+)_[0-9a-z]*' name=$? echo $name done До сих пор (очевидно, что вы, гуру оболочки) $nameпросто держите...

378
Как я могу отформатировать мой вывод grep, чтобы показать номера строк в конце строки, а также счетчик посещений?

Я использую grep для сопоставления строки в файле. Вот пример файла: example one, example two null, example three, example four null, grep -i null myfile.txt возвращается example two null, example four null, Как я могу вернуть совпавшие строки вместе с их номерами строк следующим образом: example...