6.19. Краткий обзор команд

В общем случае команды редактора ed состоят из имени команды, которому могут предшествовать один или два номера строк, и после которого для команд "e", "r" и "w" может указываться имя файла. В строке может присутствовать только одна команда, однако команда "p" может следовать после любой другой команды, кроме "e", "r", "w" и "q".

a -
Дописать строки в буфер редактора после текущей строки, (если не задана другая строка). Дозапись продолжается до тех пор, пока не будет введена команда ".<CR>". Текущей становится последняя дописанная строка. В этой команде допускается адрес "0", при этом текст помещается в начало буфера.

c -
Заменить указанные строки новым текстом, следующим после команды "c". Ввод новых строк завершается ".<CR>". Если номера строк в команде не указаны, заменяется текущая строка. Текущей становится последняя замененная строка или (если строк замены не было) строка, предшествующая удаленным строкам.

d -
Удалить указанные строки. Если номера строк не заданы, удаляется текущая строка. Текущей становится первая неудаленная строка, кроме случая, когда удаляется последняя строка буфера. В этом случае текущей становится новая последняя строка буфера.

e -
Релактирование нового файла. Предшествующее содержимое буфера теряется, так что предварительно полезно ввести команду "w". Текущей становится последняя строка буфера.

E -
Команда выполняет те же действия, что и "e", за исключением того, что не выдается сообщение, если после последнего изменения буфера не была выдана команда записи "w".

f -
Выдать текущее имя файла. Если после команды "f" указывается имя файла, текущее имя файла будет заменено этим именем.

g -
Конструкция "g/re/команды" выполняет указанные "команды" над теми строками, которые соответствуют образцу "re".

i -
Вставить строки перед указанной строкой (или строкой, определяемой точкой). Вставка завершается командой ".<CR>". Текущей становится последняя вставленная строка.

j -
Объединить указанные строки в одну строку. Если строки не указаны, объединяются текущая и следующая за ней строки.

k -
Отметить строку (указанную или текущую) маркером, задаваемым псле "k". В качестве маркера используются строчные латинские буквы.

l -
Распечатать строки. Команда "l" эквивалентна команде "p", однако она распечатывает графически не отображаемые символы и "сворачивает длинные строки".

m -
Поместить указанные строки после строки, задаваемой после "m". Текущей становится последняя перемещенная строка.

p -
Выдать указанные строки. Если строки не указаны, распечатывается текущая строка. Отдельный номер строки эквивалентен команде "(номер_строки)p". Простое нажатие клавиши <CR> распечатывает следующую строку.

q -
Выход из редактора. Если при этой операции теряется информация (например, копия исходного файла изменялась, но не была выдана команда записи "w"), после первой команды "q" выдается подсказка "?" и никаких действий не производится. Выдача подряд двух команд "q" без предварительной команды "w" приводит к стиранию буфера и окончанию работы с редактором.

Q -
Работает также как команда "q" за исключением того, что выход производится немедленно (без какой-либо диагностики о возможной потере информации).

r -
Прочитать файл в буфер (в конец буфера, если не указано по-другому). Текущей становится последняя считанная строка.

s -
Команда s/xxx/yyy/ подставляет вместо символов "xxx" символы "yyy" в указанных строках. Если строки не указаны, подстановка выполняется в текущей строке. Текущей становится последняя строка, в которой произошла подстановка, это приводит к сохранению исходного положения, если не была выполнена ни одна подстановка. Команда "s" заменяет только первое вхождение "xxx" в строке. Для замены всех вхождений после завершающей дробной черты указывается символ "g".

t -
Скопировать указанные строки после строки, задаваемой после "t". Текущей становится последняя скопированная строка.

u -
Аннулировать изменение, выполненное предшествующей командой.

v -
Конструкция "v/re/команды" выполняет указанные "команды" над теми строками, которые не соответствуют образцу "re".

w -
Записать буфер в файл. Значение указателя текущей строки не изменяется.

W -
Аналогична команде "w", за исключением того, что указанные строки дописываются к файлу.

x -
Работа в режиме шифрации. Запрашивается ключ, используя который последующие команды "r", "е" и "w" будут зашифровывать и расшифровывать текст. Пустой ключ отменяет режим шифрации.

.= -
Выдать текущий номер строки (один символ "=" печатает номер последней строки).

! -
Конструкция "!командная_строка" вызывает выполнение "командной_строки" интерпретатором команд.

/re/ -
Контекстный поиск. Поиск следующей строки, которая содержит данную последовательность символов, и ее выдача. Текущей становится строка, соответствующая заданному образцу "re". Поиск начинается со строки ".+1" до "$", после последней строки переходит к строке 1 и, при необходимости, продолжается до текущей строки.

?re? -
Контекстный поиск в обратном направлении. Поиск начинается со строки 1 и продолжается до последней строки.

. (точка) -
Обозначение текущей строки.

$ -
Обозначение последней строки.

'x -
Обозначение строки, ранее отмеченной маркером "x".

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