Введение в Unix



         

Поиск строк в файле по образцу (grep) - часть 2


"^ [abcxyz]" - найти все строки, начинающиеся с букв a,b,c,x,y или z;

"[^Dd][a-z][a-z][a-z]" - найти все слова из 4 букв, не начинающиеся с D или d, в которых последние три буквы - малые (от a до z).

Фигурные скобки задают количество повторений (замыкание) предыдущего знака:

"[^Dd][a-z]{3}" - то же самое, что и предыдущий пример;

"[a-z]{3,5}" - найти все слова, содержащие от 3 до 5 малых букв.

Частные случаи замыкания обозначаются специальным образом:

* для {0} - ноль и более раз;

+ для {1} - один и более раз;

? для {0,1} - ноль или один раз.

Например:

$ grep ".*" people - просто напечатает все строки файла.

Примеры использования регулярных выражений:

уничтожить все пустые строки в файле:

$ grep -v "^ $" file > newfile;

уничтожить все строки, состоящие только из пробелов:

$ grep -v "^ *$" file > newfile.




Содержание  Назад  Вперед