Вставка новой строки в середине строки в ed (редактор)
Предположим, я открыл текстовый файл в ed, и текущая строка выглядит так:
This is sentence one. Here starts another one.
Теперь я хочу поставить новую строку после one.
так, что новое предложение начинается с Here starts
занимает следующую строку.
Как мне это сделать в Эд?
2 ответа
Решение
Вы используете s
Команда сделать замены. Формат такой:
s/pattern/replacement/
Чтобы включить новую строку в замену, добавьте обратную косую черту, затем нажмите клавишу возврата:
s/one. /one.\
/
Где вы буквально нажимаете возврат, а не включаете \r
или же \n
,
Ты можешь сделать
t.
s/text_before/
-s/text_after/
Пояснение:
t.
копирует строку, чтобы получить две последовательные одинаковые строки, каждая из которых содержит исходный текст.- Измените вторую строку, чтобы она содержала только нужный текст после добавленной новой строки.
- Сделайте то же самое для 1-й строки для текста, который вы хотите перед новой строкой.
ПРИМЕЧАНИЕ. Префикс "-" означает, что нужно сделать это для предыдущей (текущей адресуемой) строки.
Используйте следующую команду в ed:
s/\. /\.\
/
Имейте в виду, что есть две линии.
С помощью 1,$p
вы увидите ожидаемый результат.