Наши партнеры








Книги по Linux (с отзывами читателей)

Библиотека сайта rus-linux.net

10.5. Примеры некоторых полезных программ

awk может использоваться для написания больших программ некоторой сложности. В нее могут входить некоторые короткие программы, которые для вас являются полезными и поучительными. Приведем некоторые из них.

Напечатать последнее поле каждой вводной строки:

	{print $NF}
Напечатать 10-ю вводную строку:
	NF == 10
Напечатать последнюю вводную строку:
	{line = $0}
	END {print line}
Напечатать строки, которые не имеют 4-го поля:
	NF != 4 {print $0, "не имеют 4-го поля" }
Напечатать вводные строки, которые имеют более 4-х полей:
	NF > 4
Напечатать последние поля вводных строк, начиная с 5-го:
	$NF > 4
Напечатать общее число вводных строк:
	END {print NR}
Напечатать обшее число полей:
        {nf = nf+NF}
    END {print nf}
Напечатать общее число символов вводного файла:
        {nc = nc + length($0)}
    END {print nc + NR}
Напечатать общее число строк, которые содержат строку "Asia":
       /Asia/   {nlines++}
    END {print nlines}
(nlines++ имеет тот же эффект, что и nlines = nlines+1).