gawk это язык распознавания и обработки шаблонов. Примеры:
#выборка полей из стандартного вывода #выбирает первое поле $ echo 'one two three four' | awk '{print $1}' > one #выбирает третье и первое поле $ echo 'one two three four' | awk '{print $3,$1}' > three one
Если полярзделены не пробелом или табулятором, то используем ключ -F:
....awk -F":" '{print $4}'
Если количество полей неизвестно, то используем переменную NF:
#выбираем последнее поле ....awk '{print $NF}'
или предпоследнее
....awk '{print $(NF-1)}'
как вариант, выбрать поле ровно посередине
....awk '{print $((NF/2)+1)}'
Подсчитать число байт переданных веб-сервером, на основании его log-файла (известно, что байты там последнее поле)
$ cat requests.log 23 июля 18:57:12 HTTPD [31950]: "GET / Foo / бар HTTP / 1.1" 200 344 23 июля 18:57:13 HTTPD [31950]: "GET / HTTP / 1.1" 200 9300 23 июля 19:01:27 HTTPD [31950]: "GET / HTTP / 1.1" 200 9300 23 июля 19:01:55 HTTPD [31950]: "GET / Foo / Baz HTTP / 1.1" 200 6401 23 июля 19:02:31 HTTPD [31950]: "? GET / Foo / Baz страница = 2 HTTP / 1.1" 200 6312 $ < requests.log awk '{totalBytes+=$NF} END {print totalBytes}' 31657