Операционная система UNIX. Руководство программиста




Встроенные функции - часть 2


{ $1 = substr ($1, 1, 3); print }

позволяет сократить названия стран в файле countries:

Rus 8650 262 Asia Can 3852 24 North America Chi 3692 866 Asia USA 3615 219 North America Bra 3286 116 South America Aus 2968 14 Australia Ind 1269 637 Asia Arg 1072 26 South America Sud 968 19 Africa Alg 920 18 Africa

Если s - число, substr использует его текстовое представление:

substr (123456789, 3, 4) = 3456

Функция

index (s1, s2)

возвращает номер начальной позиции первого вхождения цепочки s2

в цепочку s1, либо нуль, если цепочка s2 не входит в цепочку s1.

Функция sprintf форматирует выражения так же, как это делает оператор printf, однако не отправляет результат на стандартный вывод, а присваивает его некоторой переменной. Например, оператор

x = sprintf ("%10s %6d", $1, $2)

присваивает переменной x цепочку символов, полученную форматным преобразованием значений $1 и $2, после чего x можно использовать в последующих вычислениях.

Функция getline немедленно читает следующую входную запись. Значения полей, переменных $0 и NR переустанавливаются, однако управление остается в том же самом месте awk-программы. getline возвращает 0, если обнаружен конец файла, и 1, если считана обычная запись.




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