Чтобы манипулировать не только целыми фрагментами, выбираемыми регулярными выражениями, но и их соответствующими частями, используйте
\(...\) появляется в регулярном выражении, то часть соответствующего ей фрагмента доступна как \1. Возможно до девяти помеченных выражений, на которые ссылаются с помощью \1, \2 и т.д.s/\(...\)\(.*\)/\2\1/ | Поместить 3 первых символа в конец |
/\(..*\)\1/ | Найти строки, содержащие повторяющиеся смежные цепочки символов |
Командам r
w (читать и писать) могут предшествовать номера строк: | Читать file; добавить его после строки |
| Писать строки file; положение текущей строки не изменяется |
| Добавить строки file; положение текущей строки не изменяется |
По умолчанию диапазон для w
W (команда W приведена ниже в табл. П.1.2) — это целый файл. Значение r равно $, что представляется не очень удачным. Будьте внимательны.Редактор ed
r, w. Команда f (файл) печатает или заменяет имя запомненного файла:f | Печатать имя запомненного файла |
f file | Установить запомненное имя на 'file' |
Команда e
e | Начать редактировать запомненный файл |
e file | Начать редактировать 'file' |
Команда е
q: если вы не записали измененную версию, первая команда е выдает сообщение об ошибке; е вновь инициализирует редактор независимо от внесения изменений. В некоторых системах ed связан с е, так что одна и та же команда (е filename) может использоваться внутри и вне редактора.Файлы могут быть зашифрованы по записи и дешифрованы при чтении с помощью команды x
crypt(1). В некоторых системах команда x заменена на X (прописную букву) во избежание случайностей.В табл. П.1.2 перечислены команды редактора, а в табл. П.1.3 допустимые номера строк. Каждой команде предшествует нуль, один или два номера строк, указывающие число используемых строк, если их нет, принимается соглашение по умолчанию. За большинством команд может следовать буква p для вывода последней обработанной строки или 1 для формата списка. Текущей обычно становится последняя обработанная строка; настройка не меняется командами f
k, w, x, =, !.