в чем заключается поиск по шаблону linux

Использование Grep и регулярных выражений для поиска текстовых шаблонов в Linux

Вступление

Одна из наиболее полезных и многофункциональных команд в терминале Linux – команда «grep». Grep – это акроним, который расшифровывается как «global regular expression print» (то есть, «искать везде соответствующие регулярному выражению строки и выводить их»). Это значит, что grep можно использовать для того, чтобы просмотреть, соответствуют ли вводимые данные заданным шаблонам.

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

Данное руководство рассматривает некоторые возможности команды grep, а затем переходит к использованию регулярных выражений. Все описанные в данном руководстве техники можно применить в управлении виртуальным сервером.

Основы использования

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

В качестве примера можно использовать grep для поиска строк, содержащих слово «GNU» в версии 3 GNU General Public License на системе Ubuntu.

cd /usr/share/common-licenses
grep «GNU» GPL-3
GNU GENERAL PUBLIC LICENSE
The GNU General Public License is a free, copyleft license for
the GNU General Public License is intended to guarantee your freedom to
GNU General Public License for most of our software; it applies also to
Developers that use the GNU GPL protect your rights with two steps:
«This License» refers to version 3 of the GNU General Public License.
13. Use with the GNU Affero General Public License.
under version 3 of the GNU Affero General Public License into a single
.
.

Первый аргумент, «GNU», является искомым шаблоном, а второй аргумент, «GPL-3», является входным файлом, который нужно найти.

В результате будут выведены все строки, содержащие текстовый шаблон. В некоторых дистрибутивах Linux искомый шаблон будет выделен в выведенных строках.

Общие опции

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

При необходимости игнорировать регистр параметра поиска и искать как прописные, так и строчные вариации шаблона, можно использовать утилиты «-i» или «–ignore-case».

Для примера можно использовать grep для поиска в том же файле слова «license», написанного верхним, нижним или смешанным регистром.

Как можно видеть, выведенные результаты содержат «LICENSE», «license», and «License». Если бы в файле был экземпляр «LiCeNsE», он также был бы выведен.
При необходимости найти все строки, которые не содержат указанный шаблон, можно использовать флаги «-v» или «–invert-match».

Для примера можно применить следующую команду для поиска в лицензии BSD всех строк, которые не содержат слово «the»:

Как можно видеть, последние две строки были выведены как не содержащие слова «the», поскольку команда «ignore case» не была использована.

Если применить данный флаг в предыдущем примере, будет выведен следующий результат:

Теперь можно сослаться на номер строки при необходимости внести изменения в каждой строке, которая не содержит «the».

Регулярные выражения

Как было сказано во вступлении, grep расшифровывается как «global regular expression print». Регулярное выражение – это текстовая строка, которая описывает определенный шаблон поиска.

Разные приложения и языки программирования применяют регулярные выражения немного по-разному. В данном руководстве рассматривается только небольшое подмножество способов описания шаблонов для Grep.

Буквенные совпадения

В приведенных выше примерах поиска слов «GNU» и «the» разыскивались очень простые регулярные выражения, точно соответствующие строке символов «GNU» и «the».

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

Шаблоны, точно соответствующие заданным символам, называются «буквенными», поскольку они соответствуют шаблону побуквенно, символ в символ.

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

Совпадения анкоров

Анкоры – это специальные символы, которые указывают местонахождение в строке необходимого совпадения.

К примеру, можно указать, что при поиске нужны только строки, содержащие слово «GNU» в самом начале. Для этого нужно использовать анкор «^» перед буквенной строкой.

В этом примере выведены только строки, содержащие в самом начале слово «GNU».

grep «^GNU» GPL-3
GNU General Public License for most of our software; it applies also to
GNU General Public License, you may choose any version ever published

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

В следующем регулярном выражении выведены только те строки, которые содержат «and» в конце:

grep «and$» GPL-3
that there is no warranty for this free software. For both users’ and
The precise terms and conditions for copying, distribution and
License. Each licensee is addressed as «you». «Licensees» and
receive it, in any medium, provided that you conspicuously and
alternative is allowed only occasionally and noncommercially, and
network may be denied when the modification itself materially and
adversely affects the operation of the network or violates the rules and
provisionally, unless and until the copyright holder explicitly and
receives a license from the original licensors, to run, modify and
make, use, sell, offer for sale, import and otherwise run, modify and

Совпадение любого символа

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

К примеру, при необходимости найти совпадения, содержащие два символа и затем последовательность «cept», нужно использовать следующий шаблон:

grep «..cept» GPL-3
use, which is precisely where it is most unacceptable. Therefore, we
infringement under applicable copyright law, except executing it on a
tells the user that there is no warranty for the work (except to the
License by making exceptions from one or more of its conditions.
form of a separately written license, or stated as exceptions;
You may not propagate or modify a covered work except as expressly
9. Acceptance Not Required for Having Copies.
.
.

Как можно видеть, в результатах выведены слова «accept» and «except», а также вариации этих слов. Шаблон также совпал бы с последовательностью «z2cept», если бы такая была в тексте.

Выражения в скобках

Поместив группу символов в квадратные скобки («[ ]»), можно указать, что в данной позиции может находиться любой из взятых в скобки символов.

Это значит, что при необходимости найти строки, содержащие «too» или «two», можно кратко указать данные вариации, используя следующий шаблон:

grep «t[wo]o» GPL-3
your programs, too.
freedoms that you received. You must make sure that they, too, receive
Developers that use the GNU GPL protect your rights with two steps:
a computer network, with no transfer of a copy, is not conveying.
System Libraries, or general-purpose tools or generally available free
Corresponding Source from a network server at no charge.
.
.

Как можно видеть, обе вариации были найдены в файле.

Внесение символов в скобки также предоставляет несколько полезных возможностей. Можно указать, что с шаблоном совпадает все, кроме символов в скобках, если начать список символов, внесенных в скобки, с символа «^».

В данном примере используется шаблон «.ode», с которым не должна совпадать последовательность «code».

grep «[^c]ode» GPL-3
1. Source Code.
model, to give anyone who possesses the object code either (1) a
the only significant mode of use of the product.
notice like this when it starts in an interactive mode:

Стоит заметить, что вторая выведенная строка содержит слово «code». Это не ошибка регулярного выражения или команды grep.

Вернее, эта строка была выведена, потому что она также содержит соответствующую шаблону последовательность «mode», найденную в слове «model». То есть, строка была выведена потому, что в ней было обнаружено совпадение с шаблоном.

Еще одна полезная функция скобок – возможность указать диапазон символов вместо того, чтобы отдельно вводить каждый символ.

Это значит, что при необходимости найти каждую строку, которая начинается с заглавной буквы, можно использовать следующий шаблон:

grep «^[A-Z]» GPL-3
GNU General Public License for most of our software; it applies also to
States should not allow patents to restrict development and use of
License. Each licensee is addressed as «you». «Licensees» and
Component, and (b) serves only to enable use of the work with that
Major Component, or to implement a Standard Interface for which an
System Libraries, or general-purpose tools or generally available free
Source.
User Product is transferred to the recipient in perpetuity or for a
.
.

В связи с некоторыми наследственными проблемами сортировки, для более точного результата лучше использовать классы символов стандарта POSIX вместо диапазона символов, использованного в примере выше.
Существует множество классов символов, не охваченных данным руководством; к примеру, чтобы выполнить ту же процедуру, что и в примере выше, можно использовать класс символов «[:upper:]» в скобках.

grep «^[[:upper:]]» GPL-3
GNU General Public License for most of our software; it applies also to
States should not allow patents to restrict development and use of
License. Each licensee is addressed as «you». «Licensees» and
Component, and (b) serves only to enable use of the work with that
Major Component, or to implement a Standard Interface for which an
System Libraries, or general-purpose tools or generally available free
Source.
User Product is transferred to the recipient in perpetuity or for a
.
.

Шаблон повторения (0 или больше раз)

Одним из наиболее часто используемых метасимволов является символ «*», что означает «повторить предыдущий символ или выражение 0 или больше раз».

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

grep «([A-Za-z ]*)» GPL-3
Copyright (C) 2007 Free Software Foundation, Inc.
distribution (with or without modification), making available to the
than the work as a whole, that (a) is included in the normal form of
Component, and (b) serves only to enable use of the work with that
(if any) on which the executable work runs, or a compiler used to
(including a physical distribution medium), accompanied by the
(including a physical distribution medium), accompanied by a
place (gratis or for a charge), and offer equivalent access to the
.
.

Как избежать метасимволов

Иногда может понадобиться искать буквальную точку или буквальную открытую скобку. Поскольку данные символы имеют определенное значение в регулярных выражениях, необходимо «избегать» их, говоря команде grep, что в данном случае использовать их особое значение не нужно.

Этих символов можно избежать, используя обратную косую (\) перед символом, который обычно имеет особое значение.

К примеру, при необходимости найти строку, что начинается с заглавной и заканчивается точкой, можно использовать приведенное ниже выражение. Обратная косая перед последней точкой говорит команде «избегать» ее, так что последняя точка представляет буквальную точку и не имеет значения «любой символ»:

grep «^[A-Z].*\.$» GPL-3
Source.
License by making exceptions from one or more of its conditions.
License would be to refrain entirely from conveying the Program.
ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
SUCH DAMAGES.
Also add information on how to contact you by electronic and paper mail.

Расширенные регулярные выражения

Команду Grep можно также использовать с расширенным языком регулярных выражений при помощи флага «-E» или же вызывая команду «egrep» вместо «grep».

Эти команды открывают возможности «расширенных регулярных выражений». Расширенные регулярные выражения включают в себя все основные метасимволы, а также дополнительные метасимволы для выражения более сложных совпадений.

Группирование

Одна из простейших и полезнейших возможностей, которые открывают расширенные регулярные выражения, – это возможность группировать выражения и использовать их как единое целое.

Для группирования выражений используются круглые скобки. При необходимости использовать круглые скобки вне расширенных регулярных выражений, их можно «избежать» при помощи обратной косой

Приведенные выше выражения являются эквивалентами.

Чередование

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

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

В данном примере нужно найти «GPL» или «General Public License»:

Чередование можно использовать для выбора между двумя и более вариантами; для этого нужно ввести остальные варианты в группу отбора, отделяя каждый при помощи символа вертикальной черты «|».

Кванторы

В расширенных регулярных выражениях существуют метасимволы, указывающие частоту повторения символа, подобно тому, как метасимвол «*» указывает на совпадения предыдущего символа или строки символов 0 или более раз.

Чтобы указать совпадение символа 0 или больше раз, можно использовать символ «?». Он сделает предыдущий символ или ряд символов, по сути, необязательными.

В данном примере при помощи внесения последовательности «copy» в факультативную группу выведены совпадения «copyright» и «right»:

Символ «+» ищет совпадения выражений 1 или больше раз. Он работает почти как символ «*», но при использовании «+» выражение должно совпасть хотя бы 1 раз.

Приведенное ниже выражение ищет совпадения строки «free» плюс 1 или больше символов, которые не являются пробельными:

Количество повторений совпадений

При необходимости указать количество повторения совпадений можно использовать фигурные скобки («< >»). Эти символы используются для указания точного количества, диапазона, а также верхнего и нижнего предела количества совпадений выражения.

При необходимости найти все строки, что содержат сочетание трех гласных, можно использовать следующее выражение:

Выводы

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

Регулярные выражения еще более многофункциональны и могут быть использованы во многих популярных программах. К примеру, многие текстовые редакторы применяют регулярные выражения для поиска и замены текста.

Более того, передовые языки программирования используют регулярные выражения для выполнения процедур на конкретных фрагментах данных. Умение работать с регулярными выражениями пригодится при решении общих задач, связанных с компьютером.

Источник

Кунг-фу стиля Linux: регулярные выражения

Если вы считаете, что умеете готовить, то может, вы знаете о том, как сделать суфле или пахлаву, а может — и не знаете. Но есть кое-что такое, чему вы, вероятно, научились, просто готовя разные блюда. Например, вы, скорее всего, можете вскипятить воду, можете правильно разбить яйцо, можете поджарить мясо. Если говорить о работе в Linux или Unix, то тут тоже можно сделать похожие наблюдения. Возможно, вы не знаете о том, как установить сервер Wayland, или о том, как написать модуль ядра. Но есть определённые базовые навыки, вроде работы с файлами или редактирования текстов, которые люди осваивают независимо от того, чем они занимаются, навыки, которые помогают им в самых разных ситуациях. Один из навыков, полезных в самых разных ситуациях, овладение которым часто вызывает определённые сложности, это — умение пользоваться регулярными выражениями. Многие программы используют их в качестве средства описания шаблонов поиска чего-либо. Обычно — для поиска данных в строках, например — в файлах с каким-то текстом.

в чем заключается поиск по шаблону linux. Смотреть фото в чем заключается поиск по шаблону linux. Смотреть картинку в чем заключается поиск по шаблону linux. Картинка про в чем заключается поиск по шаблону linux. Фото в чем заключается поиск по шаблону linux

Если вы не очень хорошо умеете пользоваться регулярными выражениями, знайте, что это легко исправить. Их не так уж и сложно изучить, кроме того — существуют замечательные инструменты, которые способны помочь при работе с регулярными выражениями. Сами регулярные выражения используются во многих утилитах. При этом везде используются одни и те же базовые синтаксические конструкции регулярных выражений. Источником путаницы, правда, являются особенности устройства регулярных выражений в разных средах. То, что выходит за рамки базовых синтаксических конструкций, в разных местах может различаться.

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

Программы, в которых используются регулярные выражения

Возможно, первая программа, о которой вспоминают, когда говорят о регулярных выражениях, это — grep. Это — простая утилита, которая принимает регулярное выражение и имя файла (или несколько имён). Источником данных для неё может служить и стандартный поток ввода. В обычном режиме работы эта утилита выводит строки, в которых найдено совпадение с регулярным выражением. Это — простая, но мощная программа, она является одним из популярнейших инструментов командной строки. Именно поэтому я и решил построить примеры к этой статье на её основе.

Но grep — это далеко не единственная программа, использующая регулярные выражения. Среди других программ, в которых применяются регулярные выражения, можно отметить awk, sed, perl, разные редакторы, вроде Vim и emacs. Этот список можно продолжать ещё очень долго. Столь широкая распространённость регулярных выражений ведёт к тому, что их можно увидеть, например, в неких настройках программ, они встречаются даже в веб-приложениях, где используются для расширения возможностей этих приложений.

Поиск строк по шаблонам и классы

Взгляните на следующий пример:

Эта команда просмотрит файл somefile.txt и найдёт следующие строки:

▍Точка — это универсальный символ

▍Экранирование символов

Если точка — это «универсальный символ», то как тогда найти строки, в которых есть точка? Для этого можно воспользоваться экранированием символов с использованием обратной косой черты. Этот приём можно использовать в применении к любым специальным символам. В результате регулярное выражение d\.g найдёт строку d.g и ничего другого. Правда, тут стоит помнить о том, что символ обратной косой черты может иметь особый смысл в различных программах. Например, посмотрите на этот сеанс работы с egrep.

Использование обратной косой черты

▍Классы символов

Иногда того, кто использует регулярные выражения, не интересует один заранее заданный символ. Но его при этом не устроит и поиск любого символа. В таких ситуациях в дело вступают классы символов. Например:

Повторы

▍Продвинутое описание повторов

В более продвинутых регулярных выражениях для описания повторов можно пользоваться фигурными скобками, указывая в них то, сколько раз может повторяться шаблон. Некоторые инструменты требуют экранирования символов фигурных скобок. При работе с grep экранировать их не нужно. То есть, например, если нужно найти четыре буквы, записанные в нижнем регистре, можно воспользоваться конструкцией [a-z] <4>.

▍В разных программах обработка повторов различается

Привязка шаблона к началу и к концу строки

Группировка

Существует несколько способов группировки регулярных выражений. Можно использовать скобки (правда, некоторые инструменты требуют их экранирования при использовании их для группировки шаблонов). Вот пример:

в чем заключается поиск по шаблону linux. Смотреть фото в чем заключается поиск по шаблону linux. Смотреть картинку в чем заключается поиск по шаблону linux. Картинка про в чем заключается поиск по шаблону linux. Фото в чем заключается поиск по шаблону linux

В чём польза регулярных выражений? Зачем их изучать?

Варианты регулярных выражений

К сожалению, между способами использования регулярных выражений существуют небольшие различия. Вот что однажды сказал по этому поводу Дональд Кнут: «Я определяю UNIX, как 30 определений регулярных выражений, живущих под одной крышей».

Я уже говорил о некоторых из этих различий. Например, некоторые реализации регулярных выражений воспринимают скобки как группировочные символы в том случае, если они не экранированы. А другие, при таком их использовании, требуют их экранировать. Иначе скобки будут восприниматься как обычные символы.

Инструменты для отладки регулярных выражений

Собственно говоря, это — всё, что нужно знать о регулярных выражениях для начала работы с ними. Если вы хотите отлаживать регулярные выражения в интерактивном режиме, то знайте, что существует множество хороших инструментов, направленных на решение этой задачи. Ещё можно строить схемы регулярных выражений. Это помогает лучше понимать их смысл.

Возможно, вам пригодится библиотека регулярных выражений, из которой можно, так сказать, что-нибудь позаимствовать. А если вы хотите изучать регулярные выражения в игровой форме — можете заглянуть сюда и сюда.

Пользуетесь ли вы регулярными выражениями, работая в Linux?

Источник

ИТ База знаний

Полезно

— Онлайн генератор устойчивых паролей

— Онлайн калькулятор подсетей

— Руководство администратора FreePBX на русском языке

— Руководство администратора Cisco UCM/CME на русском языке

— Руководство администратора по Linux/Unix

Навигация

Серверные решения

Телефония

FreePBX и Asterisk

Настройка программных телефонов

Корпоративные сети

Протоколы и стандарты

Регулярные выражения в Linux

На регулярной основе

Интересным вопросом в Linux системах, является управление регулярными выражениями. Это полезный и необходимый навык не только профессионалам своего дела, системным администраторам, но, а также и обычным пользователям линуксоподобных операционных систем. В данной статье я постараюсь раскрыть, как создавать регулярные выражения и как их применять на практике в каких-либо целях. Основной областью применение регулярных выражений является поиск информации и файлов в линуксоподобных операционных системах.

в чем заключается поиск по шаблону linux. Смотреть фото в чем заключается поиск по шаблону linux. Смотреть картинку в чем заключается поиск по шаблону linux. Картинка про в чем заключается поиск по шаблону linux. Фото в чем заключается поиск по шаблону linux

Для работы в основном используются следующие символы:

Регулярные выражения в основном используются со следующими командами:

А особенно с утилитой grep. Данная утилита используется для сортировки результатов чего либо, передавая ей результаты по конвейеру. Эта утилита осуществляет поиск и передачу на стандартный вывод результат его. ЕЕ можно запускать с различными ключами, но можно использовать ее другие варианты, которые представлены выше.

И есть еще потоковый текстовый редактор. Это не полноценный текстовый редактор, он просто получает информацию построчно и обрабатывает. После чего выводит на стандартный вывод. Он не изменяет текстовый вывод или текстовый поток, он просто редактирует перед тем как вывести его для нас на экран.

Начнем со следующего. Создадим один пустой файл file1.txt, через команду touch. Создадим в текстовом редакторе в той же директории файл file.txt.

в чем заключается поиск по шаблону linux. Смотреть фото в чем заключается поиск по шаблону linux. Смотреть картинку в чем заключается поиск по шаблону linux. Картинка про в чем заключается поиск по шаблону linux. Фото в чем заключается поиск по шаблону linux

Как мы видим в файле file.txt просто набор слов. Далее мы с помощью данных слов посмотрим, как работают команды.

в чем заключается поиск по шаблону linux. Смотреть фото в чем заключается поиск по шаблону linux. Смотреть картинку в чем заключается поиск по шаблону linux. Картинка про в чем заключается поиск по шаблону linux. Фото в чем заключается поиск по шаблону linux

в чем заключается поиск по шаблону linux. Смотреть фото в чем заключается поиск по шаблону linux. Смотреть картинку в чем заключается поиск по шаблону linux. Картинка про в чем заключается поиск по шаблону linux. Фото в чем заключается поиск по шаблону linux

Посмотрим содержимое нашего каталога командой ls, а затем отфильтруем только то, что заканчивается на «ile«.

в чем заключается поиск по шаблону linux. Смотреть фото в чем заключается поиск по шаблону linux. Смотреть картинку в чем заключается поиск по шаблону linux. Картинка про в чем заключается поиск по шаблону linux. Фото в чем заключается поиск по шаблону linux

Получается следующее, когда мы даем на ввод команде grep шаблон и где искать, он работает с файлом, а когда мы даем команду ls она выводи содержимое каталога и мы это содержимое передаем по конвейеру на команду grep с заданным шаблоном. Соответственно grep фильтрует переданное содержимое согласно шаблона и выводит на экран. Получается, что команде grep дали, то команда и обработала.

в чем заключается поиск по шаблону linux. Смотреть фото в чем заключается поиск по шаблону linux. Смотреть картинку в чем заключается поиск по шаблону linux. Картинка про в чем заключается поиск по шаблону linux. Фото в чем заключается поиск по шаблону linux

Наглядно можно посмотреть на рисунке выше. Мы просматриваем командой cat содержимое файла и подаем на ввод команде grep с фильтрацией по шаблону.

в чем заключается поиск по шаблону linux. Смотреть фото в чем заключается поиск по шаблону linux. Смотреть картинку в чем заключается поиск по шаблону linux. Картинка про в чем заключается поиск по шаблону linux. Фото в чем заключается поиск по шаблону linux

в чем заключается поиск по шаблону linux. Смотреть фото в чем заключается поиск по шаблону linux. Смотреть картинку в чем заключается поиск по шаблону linux. Картинка про в чем заключается поиск по шаблону linux. Фото в чем заключается поиск по шаблону linux

Попробуем рассмотреть другую команду egrep.

egrep (Extended grep)

Данная команда позволяет использовать более расширенный набор шаблонов. Рассмотрим следующий пример команды:

Шаблон заключается в одинарные кавычки, для того чтобы экранировать символы, и команда egrep поняла, что это относится к ней и воспринимала выражение как шаблон. Сам же шаблон означает, что поиск будет искать слова, в начале строки (знак ^) содержащие букву b или d.

в чем заключается поиск по шаблону linux. Смотреть фото в чем заключается поиск по шаблону linux. Смотреть картинку в чем заключается поиск по шаблону linux. Картинка про в чем заключается поиск по шаблону linux. Фото в чем заключается поиск по шаблону linux

Мы видим, что команда вернула слова, начинающиеся с буквы b или d. Рассмотрим другой вариант использования команды egrep. Например:

в чем заключается поиск по шаблону linux. Смотреть фото в чем заключается поиск по шаблону linux. Смотреть картинку в чем заключается поиск по шаблону linux. Картинка про в чем заключается поиск по шаблону linux. Фото в чем заключается поиск по шаблону linux

Усложним еще шаблон. Возьмем следующий:

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

в чем заключается поиск по шаблону linux. Смотреть фото в чем заключается поиск по шаблону linux. Смотреть картинку в чем заключается поиск по шаблону linux. Картинка про в чем заключается поиск по шаблону linux. Фото в чем заключается поиск по шаблону linux

Вот теперь все хорошо. Слова с Заглавными буквами тоже отобразились.

Про fgrep

в чем заключается поиск по шаблону linux. Смотреть фото в чем заключается поиск по шаблону linux. Смотреть картинку в чем заключается поиск по шаблону linux. Картинка про в чем заключается поиск по шаблону linux. Фото в чем заключается поиск по шаблону linux

Рекурсивный rgrep

в чем заключается поиск по шаблону linux. Смотреть фото в чем заключается поиск по шаблону linux. Смотреть картинку в чем заключается поиск по шаблону linux. Картинка про в чем заключается поиск по шаблону linux. Фото в чем заключается поиск по шаблону linux

Как мы видим grep не может искать в папках. Для таких случаев и используется утилита rgrep.

Дает следующую картину.

в чем заключается поиск по шаблону linux. Смотреть фото в чем заключается поиск по шаблону linux. Смотреть картинку в чем заключается поиск по шаблону linux. Картинка про в чем заключается поиск по шаблону linux. Фото в чем заключается поиск по шаблону linux

Совершенно спокойно в папке найдено было, то что подходило под шаблон.

Команда sed

в чем заключается поиск по шаблону linux. Смотреть фото в чем заключается поиск по шаблону linux. Смотреть картинку в чем заключается поиск по шаблону linux. Картинка про в чем заключается поиск по шаблону linux. Фото в чем заключается поиск по шаблону linux

В данном редакторе мы можем ему сказать использовать регулярные выражения, для этого необходимо добавить ключ -r. У данного редактора очень большой функционал.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *