Компьютерные сети и технологии
Привет
Пользователь:

Пароль:



[ ]
[ ]

В сети
Гостей: 12
Участников: 0
На странице: 1
Участников: 3872, Новичок: ritasovurova

Разное

(Занятие 10) awk - язык сканирования и обработки текста
Операционная система UNIX (руководство пользователя)
на Friday 04 August 2006
от список авторов отправить по email статья печатать статья
в Сетевые Операционные Системы ОС > Linux - Unix



10.10. Комбинация шаблонов

Составной шаблон комбирирует простые шаблоны с логическими операторами "||" (или), "&&" (и), !(отрицание). Например, нужно напечатать все страны в "Asia" с населением более 500 млн. Следующая программа выполняет выбор всех строк, у которых 4-е поле "Asia" и третье поле превышает 500:

    $4 == "Asia" && $3 > 500

Программа:

    $4 == "Asia" || $4 == "Africa"

выбирает строки с названиями "Asia" или "Africa" в 4-м поле. Эти же действия можно выполнить с помощью регулярного выражения и альтернативного оператора "|":

    $4 ~ /^(Asia|Africa)$/

Оператор отрицания "!" имеет более высокий проиритет, чем "&&" и "||". Операторы "&&" и "||" вычисляются слева направо. Вычисление останавливается как только истина или ложь будут достигнуты.

10.11. Область шаблона

Область шаблона состоит из двух шаблонов, разделенных запятой:

    pat1, pat2 

В этом случае действие выполняется для каждой строки, расположенной между pat1 и pat2 (включительно). Например, шаблон:

    /Canada/, /Brazil/

ищет строки со словом "Canada" до строки со словом "Brazil"

        Canada      3852     24      North America
        China       3692     866     Asia
        USA         3615     219     North America
        Brazil      3286     116     South America


Также, если FNR - число текущих записей в текущем вводном файле, FILENAME - имя текущего вводного файла, то программа:

FNR == 1, FNR == 5
печатает первые 5 записей каждого вводного файла с именем FILENAME.



Поиск Компьютерные сети и технологии

Copyright © 2006 - 2020
При использовании материалов сайта ссылка на xnets.ru обязательна!