MyTetra Share
Делитесь знаниями!
Регулярные выражения grep в командной строке Linux
Время создания: 15.05.2009 02:11
Текстовые метки: regular expression, регулярные выражения, grep
Раздел: Компьютер - Программирование - Регулярные выражения
Запись: xintrea/mytetra_syncro/master/base/0000000916/text.html на raw.github.com

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


Пример:



# dmesg | grep "\(sata\)\|\(SATA\)"



Особенность 1. В sh-скриптах, в отличие от команд, вызваемых в командной строке, экранировать управляющие символы обратным слешем вроде бы не нужно. Проверить, ибо это явный бред. Если это так, то вообще непонятно как отлаживать регулярки в консоли.


Особенность 2. В команде grep (без дополнительных опций) не работают такие простые метасимволы как \d (цифра). Вместо них нужно писать полное выражение [0-9].



Полезные опции


Опция -P позволяет использовать классические PCRE выражения. С ней начинают работать и ленивые кванторы, и метасимволы типа \d.


Опция -o заставит grep выдавать не всю строку, где найдено совпадение, а только часть строки, которая совпадает с искомым паттерном.


Так же в этом разделе:
 
MyTetra Share v.0.59
Яндекс индекс цитирования