Далее описывается язык программирования, который позволяет легко управлять задачами обработки данных и поиска информации. С помощью awk вы можете составлять таблицы результатов обследования (наблюдения), сохраненных в файле, печатать различные отчеты, суммирующие эти результаты, изменить формат файла данных, используемый одним пакетом так, чтобы он мог быть использован и другим пакетом.
Язык awk легко поддается изучению. Он автоматически выполняет многие действия, для которых в других языках вам нужно составлять программы. Как правило, многие полезные программы awk состоят из одной или двух строк.
Основной операцией awk является сканирование набора вводных строк (одну за другой) для поиска строк, которые соответствуют одному из набора шаблонов или условий, которые вы указали. Для каждого шаблона вы можете указать действие, это действие выполняется с каждой строкой, которая соответствует шаблону.
Структура awk:
шаблон {действие}
Пример.
$1 -"address" {print $2, $3}
В этом примере приведена типичная программа awk, состоящая из одного выражения шаблон-действие. Программа печатает второе и третье поля каждой вводной строки, в которой первое поле является "address".
Любой шаблон или действие в выражении шаблон-действие может быть опущен. Отсутствие части "действие" означает печать соответствующих шаблону строк. Отсутствие шаблона означает, что действие выполняется над каждой строкой.
Вы можете запустить awk двумя способами. Первый: вы можете задать командную строку:
awk 'шаблон-действие' [список вводных файлов] чтобы выполнить шаблон-действие в перечисленных вводных файлах. Например:
awk '{print $2, $3}' файл1 файл2
Обратите внимание, что выражение шаблон-действие заключено в одиночные кавычки. Это защищает символы типа $ от интерпретации командным языком shell и позволяет также программе обрабатывать более одной строки.
Если файлы не указаны в командной строке, awk читает из стандартного файла ввода. Стандартный файл ввода вы можете также указать с помощью "-". Например:
awk '{print $3, $4}' файл1 –
awk читает сначала из файл1 и затем из стандартного файла ввода. Если программа является большой по объему, то удобнее использовать следующий формат:
awk -f программа [список вводных файлов]
Например, следующая командная строка говорит, что нужно выбрать и выполнить myprogram, взяв ввод из файла file1: