sed & awk / sed & awk: 1.3 Язык регулярных выражений
| Английский оригинал | Перевод на русский | |
|---|---|---|
Сожалеем, но текст оригинала доступен только зарегистрированным пользователям. |
Определние Awk как языка программирования отпугивает некоторых от него. Если Вы один из них, считайте awk другим подходом к решению проблем, один из них состоит в том, что вы контролируете, что делает компьютерл r0mk 11.09.12 в 07:27 |
|
|
Sed легче представить как обратную сторону интерактивного редактирвоания. Процедуры sed соответствуют достаточно близко тому, как вы применяет команды для редатирования вручную. Sed ограничивает Вас в методах которые вы используете в текстовом редакторе. Awk предлагает более общую модель для обработки файлов r0mk 11.09.12 в 07:32 |
||
|
Типичным примером awk программы служит преобразование данных в отформатированный отчет.В качестве данных может быть длинный лог файл сгенерированный UNIX программой, такой как uucp, и отчет может суммировать данные в формат удобный для системного даминистратора. Другой пример, данные обрабатываются приложением и состоят из разделенных вступлений и дынных поиска. Вступления являются резульаттом обработки записи данных в стурктуру. Данные поиска - это данные извлеченные из файла и сгенерированные в отчет. r0mk 11.09.12 в 07:58 |
||
|
Ключем ко всем этим операциям являются данные с определенной структурой. Разрешите продемонстрировать аналогию со шкафом. Шкаф состоит из множества ящиков и каждый ящик имеет определенное содержание: ящик с носками, нижнее белье в другом и свитеры в третьем ящике. Иногда ящики имеют отсеки позволяющие разные вещи хранить вместе. Все эти структуры определюяют куда пойдут вещи когда Вы их сортируете после прачечной и где вещь может быть найдена когда Вы одеваетесь. Awk позволяет вам использовать структуру текстового файла в написании процедур для помещения или изъятия вещей. r0mk 11.09.12 в 11:26 |
||
|
Таким образом преимущества awk лучше все реализуются когда данные имеют определенную структуру. Текстовый файл может быть со свободной или плотной структурой. Глава состоит из значительных и незначительных секций имеющих некоторую структуру. Мы рассмотрим скрипт который извлекает заголовки разделом и нумерует и выводит их. Таблица состоящая из разделенных пунктов в столбцах может считаться структурированной. Вы можете использовать awk скрипт для упорядочивания столбцов данных или даже изменить колонки в строку и сктроку в колонку. r0mk 12.09.12 в 05:01 |
||
|
awk скрипты, равно как и sed скрипты, обычно вызываются из шелла. Этот шелл скрипт, который обычно содержит команды вызывает awk также как скрипт awk интерпретирует. Простой линейный awk скрипт может быть введон в командную строку. r0mk 12.09.12 в 05:04 |
||
|
Некоторые вещи, которое позволяет Вас сделать awk: r0mk 12.09.12 в 05:05 |
||
|
Просмотреть текстовый файл как текстовую базу данных задержащую записи и поля. r0mk 12.09.12 в 05:06 |
||
|
Использовать переменные для манипуляций с базой. r0mk 12.09.12 в 05:06 |
||
|
Использовать арифметические и текстовые операторы. r0mk 12.09.12 в 05:06 |
||
|
Использовать програмные констуркуции, такие как циклы и условия. r0mk 12.09.12 в 05:07 |
||
|
Генерировать форматированные отчеты. r0mk 12.09.12 в 05:07 |
||
|
Определять функции. r0mk 12.09.12 в 05:07 |
||
|
Вызывать UNIX команды из скрипта. r0mk 12.09.12 в 05:08 |
||
|
Обрабатывать результат команд UNIX. r0mk 12.09.12 в 05:08 |
||
|
Обрабатывать аргументы командной строки более изящно. r0mk 12.09.12 в 05:09 |
||
|
Работать проще с множеством входных потоков. r0mk 12.09.12 в 05:10 |
||
|
Благодаря этим особенностям awk имеет мощь и диапазон на которые могут полагаться пользователи выполняя некоторые задачи с помощью шелл скриптов. В этой книге Вы найдете примеры генератор команд с меню, программу для автоматической проверки арфографии и обработки индексов, каждая из которых будет использовать особенности описанные выше. r0mk 12.09.12 в 05:18 |
||
|
Возможности awk расширяют идею редактирования текста на компьютере, делая возможным выполнение различных задач по обрамотке данных, включая анализ, извлечение, и отчеты. Это, в действительности, основное применение awk, но так же есть необычные применения: awk используется для написания интерпретатора List и даже компилятора! r0mk 12.09.12 в 05:26 |
