|
| ||||||||||||
| ||||||||||||
10.3. Простые шаблоныВы можете выбрать определенные записи для печати или другой обработки с использованием простых шаблонов. awk имеет три вида шаблонов. Первое - это шаблоны, называемые выражениями отношений, которые проводят сравнения. Например, оператор "==" тестирует на равенство. Чтобы напечатать строки, для которых 4-е поле равно строке "Asia", можно использовать программу, состоящую из одного шаблона: $4 == "Asia" Если в качестве вводного файла взять countries, то получим:
USSR 8650 262 Asia
China 3692 866 Asia
India 1269 637 Asia
Для сравнения используются: >, >=, <, <=, ==, != (не равно). Сравниваться могут числа и строки. Например, из нашего файла мы хотим распечатать только страны, население которых более 100 млн. Для этого введем: $3 > 100 Получим печать всех строк, в которых третье поле более 100. В качестве шаблонов могут использоваться регулярные отношения, которые позволяют осуществлять поиск указанных символов для выбора записей. Простейшей формой регулярного отношения является строка символов, обрамленная наклонными чертами: /US/ Эта программа печатает каждую строку, которая содержит буквы US. Если в качестве вводного файла взять countries, то получим:
USSR 8650 262 Asia
USA 3615 219 North America
Третье - специальные шаблоны BEGIN и END могут использоваться для получения управления пред считыванием первой входной строки и после считывания последней. BEGIN должен быть первым шаблоном, а END - последним. Эта программа использует BEGIN для печати заголовка:
BEGIN {print "Countries of Asia:"}
/Asia/ {print " ", $1}
На выходе получим:
Countries of Asia:
USSR
China
India
Назад | Содержание | Вперед |
|
CITForum © 1997–2025