sed & awk / sed & awk: 1.2 Потоковый редактор

Оглавление
Английский оригинал Перевод на русский

Сожалеем, но текст оригинала доступен только зарегистрированным пользователям.

Потоковый редактор

r0mk 04.09.12 в 11:40

0

Sed это "не интерактивный" потоковый редактор. Он потоковый потому, что, как и большинство программ UNIX, с входа поток через программу поподает на прямую в стандартный вывод. (vi, для примера, не потоковый редактор, как и большинство приложений DOS). Данные на вход обычно поступают из файла, но могут поступать и напрямую с клавиатуры.[2] Вывод, по умолчанию, идет на экран терминала, но может быть перенаправлен в файл. Sed работает применяя скрипт для выполнения действий.

r0mk 04.09.12 в 11:48

0

[2] Как правило, это не является применимым.

r0mk 04.09.12 в 11:49

0

Sed предлагает возможности, которые выглядят как расширения для интерактивного редактирования текста. Для примера, он предлагает поиск-замену объектов, которая может применена глобально к одному файлу или группе файлов. Пока вы используете sed для изменения по условию применяемому в одном файле, Вам покажется очень удобным использовать его для внесения серии изменений в группе файлов. Подумайте о вненсении 20 разных изменений в более чем 100 файлах в минутах, и Вы поймете насколько мощьным sed может быть.

r0mk 05.09.12 в 05:42

0

Использование sed подобно написанию простых шелл скриптов(или bat файлов в DOS). Вы указываете серию действий для исполнения в последовательности. Большинство этих действий могут быть выполнены вручную используя vi: замена текста, удаление линий, вставка нового текста, и т.д. Преимущество sed в том, что вы можете указать все инструкции для редактирования в одном месте и затем выполнить за раз из файла. Вам не нужно открывать каждый файл и вносить изменения. Sed фактичекси может быть использован для очень больших файлов, которые редактировать интерактивно будет медленно.

r0mk 07.09.12 в 11:34

0

Существует много возможностей для использования sed в курсе создания и поддержания документов, особенного когда документ состоит из отдельных глав, каждая из которых хранится в отдельном файле. Обычно, после проекта документ возвращается с обзора с несколькими замечаниями, которые могут быть применены ко всем файлам. Для примера, в течении кураса документированя програмного проекта, имя программы или компонентов может меняться и вам придется выслед\живать и вносить изменения. С использованием sed это легкий процесс.

r0mk 11.09.12 в 04:57

0

Sed может быть использован для достижения согласованности в документе. Вы можете искать разными способами конкретное правило и применять их. Вы можете исользовать sed для вставки набора кодов или символов перед форматированием с помощью troff. Для примера, он может быть использован для замены кавычек на коды ASCII символов для прямых и пробратных двойных цитат("фигурные кавычки" вместо "прямых" ковычек.)

r0mk 11.09.12 в 05:07

0

Sed может быть использован как фальтр при редактировании. Другими словами, Вы можете обработать входной файл и отправить его на вывод в другую программу. Для примера, вы можете использовать sed для анализа простого текстового файла и вставки макросов troff перед выдачи результата на выход к troff для форматирования. Он позвонялет редактировать налету, возможно за раз.

r0mk 11.09.12 в 05:45

0

Автор или публицист может использовать sed для написания программы для многочисленных преобразований - перевод кодов форматирования из Scribe или TeX файлы в troff, для примера, или преобразования файла PC word, такого как WordStar. Позже мы рассмотрим sed скрипты преобразующие макросы troff в тэгистилей для использования в Ventura Publisher. (Возможно sed можно использовать для перевода программ написанных с синтаксисом одного языка в синтаксис другого языка.) Когда Sun Microsystems впервые представили Xview, они опубликовали преобразовательную программу для преобразования SunVier в Xview и эта программа в большей степени состояла из sed скрипта и преобразовывала имена различных функций.

r0mk 11.09.12 в 06:39

0

Sed имеет несколько рудиментов программирования, которые могут быть использованы для написания более сложных скриптов. Он так же имеет ограничения в работе - по одной строке за раз.

r0mk 11.09.12 в 05:48

0

Все простые sed скрипты обычно вызываются прямо из шелла, шелл скриптов которые вызывают sed и так же содержат команды которые sed исполняет. Шелл является простым способом для именования и запуска односложных команд. Пользователи команд могут не знать что используется sed. Одним из примеров такой обертки является скриптовая фраза, которая будет позже показана в книге. Это позволяет Вам искать по шаблону, что может споткнуться на двух линиях. ссылаясь а ограничения grep.

r0mk 11.09.12 в 06:55

0

В итоге используя sed:

r0mk 11.09.12 в 06:56

0

Для автоматизации редактирования одного или нескольких файлов.

r0mk 11.09.12 в 07:05

0

Для упрощения задач по выполнению подобных изменений на нескольких файлах

r0mk 11.09.12 в 07:06

0

Для написания программ по преобразованию.

r0mk 11.09.12 в 07:07

0
Минутку...