Примеры некоторых полезных программ
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).