Unix Man (Справочное руководство)


order discount viagra usa

SED(1)


SED(1)

НАЗВАНИЕ


sed - пакетный редактор

СИНТАКСИС

sed [-n] [-e сценарий] [-f с_файл] ... [файл ...]

ОПИСАНИЕ


Sed копирует указанные файлы (по умолчанию - стандартный ввод), на стандартный вывод, редактируя их в соответствии с командами сценария. Опция -f приводит к тому, что сценарий берется из с_файла, этих опций может быть несколько. Если присутствует только опция -e, а опции -f отсутствуют, флаг -e можно опустить. Опция -n подавляет вывод, выполняемый по умолчанию. Сценарий состоит из редактирующих команд (каждая на отдельной строке), имеющих следующий формат:

[адрес [, адрес]] функция [аргумент ...]

В нормальном режиме sed циклически выполняет следующие действия:

  1. Копирует входную строку в буфер (в случае, если там ничего не осталось от предыдущей команды D).
  2. Применяет к буферу последовательно все команды сценария, адреса в которых позволяют их применить.
  3. Копирует буфер на стандартный вывод (если не указана опция -n) и очищает буфер.

Некоторые команды используют хранилище, чтобы запомнить весь буфер или его часть для последующего использования.

Адрес - это либо десятичное число, означающее номер входной строки в совокупности входных файлов, либо $, означающий последнюю входную строку, либо контекстный адрес, то есть /регулярное_выражение/ в стиле редактора со следующими модификациями:

  1. В контекстном адресе конструкция \?регулярное_выражение?, где ? - любой символ, эквивалентна конструкции /регулярное_выражение/. Например, в контекстном адресе \xabc\xdefx второй x означает сам себя, поэтому значением выражения является abcxdef.
  2. Управляющая последовательность \n соответствует символу перевода строки, который включается в буфер.
  3. Точка . соответствует любому символу, кроме последнего перевода строки в буфере.
  4. Командная строка без адреса применима к любому буферу.
  5. Командная строка с одним адресом применима к буферу с соответствующим адресом.
  6. Командная строка с двумя адресами применима к буферам с адресами в диапазоне от первого до второго включительно (если второй адрес является числом, которое не превосходит номера строки, выбранной первой, обрабатывается только одна строка). Затем процесс повторяется, начиная с первого адреса.




Содержание  Назад  Вперед