HTML Diff
0 added 0 removed
Original 2026-01-01
Modified 2026-02-26
1 <p>Слово "грепать" входит в топ самых популярных терминов, используемых разработчиками. Оно происходит от одноименной консольной утилиты grep (сокращение от<em>global regular expression print</em>). Эта утилита выполняет поиск определенного текста по файлу или файлам.</p>
1 <p>Слово "грепать" входит в топ самых популярных терминов, используемых разработчиками. Оно происходит от одноименной консольной утилиты grep (сокращение от<em>global regular expression print</em>). Эта утилита выполняет поиск определенного текста по файлу или файлам.</p>
2 <p>В этом уроке мы научимся грепать и разберемся в особенностях этого процесса.</p>
2 <p>В этом уроке мы научимся грепать и разберемся в особенностях этого процесса.</p>
3 <p>Для разработчиков "грепать" - то же самое, что гуглить для активных пользователей интернета. Как правило, грепают файлы с исходным кодом или логи во время отладки:</p>
3 <p>Для разработчиков "грепать" - то же самое, что гуглить для активных пользователей интернета. Как правило, грепают файлы с исходным кодом или логи во время отладки:</p>
4 <p>Рассмотрим этот пример подробнее:</p>
4 <p>Рассмотрим этот пример подробнее:</p>
5 <ul><li>PATTERN - это то, что мы хотим найти. Это может быть конкретная строчка или определенный<a>шаблон с регулярными выражениями</a></li>
5 <ul><li>PATTERN - это то, что мы хотим найти. Это может быть конкретная строчка или определенный<a>шаблон с регулярными выражениями</a></li>
6 <li>FILE - путь до файла, в котором нужно искать</li>
6 <li>FILE - путь до файла, в котором нужно искать</li>
7 </ul><p>Посмотрите на еще один пример:</p>
7 </ul><p>Посмотрите на еще один пример:</p>
8 <p>В примере выше утилита grep нашла четыре строки. Найденные строчки выводятся на экран в том же порядке, в котором они встречаются в исходном файле.</p>
8 <p>В примере выше утилита grep нашла четыре строки. Найденные строчки выводятся на экран в том же порядке, в котором они встречаются в исходном файле.</p>
9 <p>В некоторых ситуациях нам нужно увидеть не только саму строку, но и текст вокруг нее. Количество выводимых соседних строк регулируется тремя опциями:</p>
9 <p>В некоторых ситуациях нам нужно увидеть не только саму строку, но и текст вокруг нее. Количество выводимых соседних строк регулируется тремя опциями:</p>
10 <ul><li>Количество отображаемых строк до искомой строки - -B или --before-context</li>
10 <ul><li>Количество отображаемых строк до искомой строки - -B или --before-context</li>
11 <li>Количество отображаемых строк после искомой - -A или --after-context</li>
11 <li>Количество отображаемых строк после искомой - -A или --after-context</li>
12 <li>Количество отображаемых строк до и после искомой строки - -C или --context</li>
12 <li>Количество отображаемых строк до и после искомой строки - -C или --context</li>
13 </ul><p>Изучим пример использования -C со значением 1. Это значит, что для каждой найденной строки будет выведена одна строка выше и одна строка ниже:</p>
13 </ul><p>Изучим пример использования -C со значением 1. Это значит, что для каждой найденной строки будет выведена одна строка выше и одна строка ниже:</p>
14 <p>Иногда мы не знаем, в каком файле находится то, что мы ищем. При этом мы можем знать директорию, в которой лежит этот файл.</p>
14 <p>Иногда мы не знаем, в каком файле находится то, что мы ищем. При этом мы можем знать директорию, в которой лежит этот файл.</p>
15 <p>В такой ситуации нужно сделать два изменения:</p>
15 <p>В такой ситуации нужно сделать два изменения:</p>
16 <ol><li>Добавить опцию -r - она указывает, что надо искать внутри директории. Обратите внимание, что поиск идет рекурсивно, то есть с включением всех поддиректорий</li>
16 <ol><li>Добавить опцию -r - она указывает, что надо искать внутри директории. Обратите внимание, что поиск идет рекурсивно, то есть с включением всех поддиректорий</li>
17 <li>Указать путь до директории, а не файла</li>
17 <li>Указать путь до директории, а не файла</li>
18 </ol><p>Попробуем применить утилиту grep с опцией -r:</p>
18 </ol><p>Попробуем применить утилиту grep с опцией -r:</p>
19 <p>При таком поиске в выводе указывается файл, в котором была найдена строка. Если добавить опцию n, то дополнительно отобразится номер строки:</p>
19 <p>При таком поиске в выводе указывается файл, в котором была найдена строка. Если добавить опцию n, то дополнительно отобразится номер строки:</p>
20  
20