Опции:
-F, --field-separator - разделитель полей, используется для разбиения текста на колонки;
-f, --file - прочитать данные не из стандартного вывода, а из файла;
-v, --assign - присвоить значение переменной, например foo=bar;
-b, --characters-as-bytes - считать все символы однобайтовыми;
-d, --dump-variables - вывести значения всех переменных awk по умолчанию;
-D, --debug - режим отладки, позволяет вводить команды интерактивно с клавиатуры;
-e, --source - выполнить указанный код на языке awk;
-o, --pretty-print - вывести результат работы программы в файл;
-V, --version - вывести версию утилиты.
Это далеко не все опции awk, однако их вам будет достаточно на первое время. Теперь перечислим несколько функций-действий, которые вы можете использовать:
print(строка) - вывод чего либо в стандартный поток вывода;
printf(строка) - форматированный вывод в стандартный поток вывода;
system(команда) - выполняет команду в системе;
length(строка) - возвращает длину строки;
substr(строка, старт, количество) - обрезает строку и возвращает результат;
tolower(строка) - переводит строку в нижний регистр;
toupper(строка) - переводить строку в верхний регистр.
Функций намного больше, но чтобы не загромождать статью я привел только те, которые мы будем использовать сегодня, а также ещё несколько для чтобы вы могли оценить масштаб возможностей утилиты.
В функциях-действиях можно использовать различные переменные и операторы, вот несколько из них:
FNR - номер обрабатываемой строки в файле;
FS - разделитель полей;
NF - количество колонок в данной строке;
NR - общее количество строк в обрабатываемом тексте;
RS - разделитель строк, по умолчанию символ новой строки;
$ - ссылка на колонку по номеру.