Утилита grep

Привязки ERE

Приоритеты ERE

Альтернативные ERE

ERE соответствующие нескольким символам

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

Правила построения выражений в квадратных скобках не отличаются от BRE.

Следующие правила используются при построении ERE соответствующих нескольким сим-волам:

1. Объединение ERE соответствует объединению последовательностей символов соответству­ющих каждой компоненте ERE. Объединение ERE заключенное в круглые скобки соответ­ствует тому же, чему и без круглых скобок.

2. Когда за ERE соответствующим одному символу или ERE заключенным в фигурные скобки следует знак +, то такое выражение соответствует одному или большему числу последова­тельных включений соответствующих данному ERE.

3. Когда за ERE соответствующим одному символу или ERE заключенным в фигурные скобки следует знак *, то такое выражение соответствует нулю или большему числу последова­тельных включений соответствующих данному ERE.

4. Когда за ERE соответствующим одному символу или ERE заключенным в фигурные скобки следует знак ?, то такое выражение соответствует нулю или одному включению соответ­ствующему данному ERE.

5. Когда за ERE соответствующим одному символу или ERE заключенным в фигурные скобки следует интервальное выражение вида {т}, {т,} или {т,п}, то такое выражение соот­ветствует определенному интервальным выражением числу последовательных включений соответствующих данному ERE.

Два ERE разделенные символом вертикальной черты (|) соответствуют строке, соответствующей одному из данных ERE.

[= =] [: :] [• •] \<special character>

[ ]

( )

* + ? {m,n}

л $

I

ERE могут быть привязаны к началу и концу строки. Для привязки используются символы Ли $.

1. Знак л, за пределами выражения в квадратных скобках, привязывает начинающееся с него выражение или подвыражение к началу строки.

2. Знак $, за пределами выражения в квадратных скобках, привязывает заканчивающееся им ERE к концу строки.

Формат командной строки:

grep [-Ecinlv] [-е шаблоны...] [-f файл_шаблонов ]... файл...

Производит поиск в указанных файлах или во входном потоке, отбирая строки в которых име­ется соответствие одному или более из указанных шаблонов. Аргумент шаблоны является спис­ком регулярных выражений разделенных символами новой строки. Аргумент файл_шаблонов определяет файл содержащий список шаблонов. Значения прочих параметров следующие:

-E использовать расширенные регулярные выражения

-c вывести только количество строк удовлетворяющих условию

-i не различать регистр символов

-n предварить каждую выводимую строку ее номером в файле

-l вывести только имена файлов содержащих строки удовлетворяющие условию

-v вывести строки не удовлетворяющие ни одному из шаблонов