Шаблоны-диапазоны
Шаблон в awk'е может также состоять из двух шаблонов, разделенных запятой:
шаблон1, шаблон2 { действие }
В этом случае действие выполняется для каждой строки, начиная со строки, удовлетворяющей шаблону1, и заканчивая строкой, удовлетворяющей шаблону2. Следующий оператор, в котором отсутствует действие,
/Canada/,/Brazil/
печатает все строки, расположенные между строкой, содержащей цепочку Canada, и строкой, содержащей цепочку Brazil. Например:
Canada 3852 24 North America China 3692 866 Asia USA 3615 219 North America Brazil 3286 116 South America
Шаблон
NR == 2, NR == 5 { ... }
вызывает выполнение действия для входных строк со второй по пятую. Разные типы шаблонов можно смешивать, например:
/Canada/, $4 == "Africa"
Данный оператор печатает все строки, начиная с той, которая содержит цепочку Canada, и заканчивая той, четвертое поле которой суть Africa.
Примечание
Приведенное выше обсуждение механизма сопоставления с шаблоном относится к разделу шаблонов awk-операторов. Сопоставление с шаблоном может также иметь место в операторах if и while в разделе действий. См. раздел Управляющие конструкции.