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