Главная > Обработка текста и поиск > ed

ed: Редактор текста, ориентированный на строки

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

Обзор

ed — это мощный, но лаконичный редактор, специализирующийся на редактировании текстовых файлов построчно. Помимо интерактивного режима, он может использоваться в неинтерактивном режиме в скриптах, что делает его подходящим для автоматизированной обработки текста.

Основные характеристики

  • Строково-ориентированное редактирование: работа построчно
  • Дружелюбен к скриптам: подходит для неинтерактивного использования
  • Очень легкий: использует минимальные ресурсы
  • Стандарт POSIX: предустановлен в большинстве систем Unix/Linux

Основные опции

ed имеет немного опций командной строки, большинство функций выполняется внутренними командами редактора.

Управление поведением

Сгенерированная команда:

Комбинируйте команды.

Описание:

`ed` Запускает команду.

Комбинируйте эти опции, чтобы виртуально выполнять команды с помощью ИИ.

Примеры использования

ed можно использовать интерактивно или через перенаправление ввода в скриптах.

Создание нового файла и добавление текста

ed newfile.txt
a
Hello, ed!
This is a test line.
.
w
q

Открывает новый файл, добавляет текст, затем сохраняет и выходит.

Открытие существующего файла и просмотр содержимого

ed existing_file.txt
1,$p
q

Открывает существующий файл, выводит все строки, затем выходит.

Замена определенного текста (неинтерактивно)

echo '1,$s/old_text/new_text/g
w
q' | ed -s my_document.txt

Заменяет весь 'old_text' на 'new_text' в файле и сохраняет. Опция -s подавляет вывод.

Добавление содержимого в конец файла (неинтерактивно)

echo '$a
New line added at the end.
.
w
q' | ed -s my_document.txt

Добавляет новую строку в конец файла и сохраняет.

Советы и предостережения

ed имеет совершенно иной способ использования, чем другие современные редакторы, поэтому важно понимать несколько ключевых концепций.

Ключевые концепции использования ed

  • Режим команд и режим ввода: ed по умолчанию находится в режиме команд, и вы переходите в режим ввода с помощью команд a (append), i (insert), c (change). В режиме ввода ввод . (точки) в отдельной строке возвращает вас в режим команд.
  • Указание адресов: Команды могут применяться к определенным строкам (например, 1 — первая строка, $ — последняя строка, . — текущая строка) или диапазонам строк (например, 1,$ — весь файл).
  • Сохранение и выход: Команда w сохраняет изменения, а команда q завершает работу редактора. Комбинации типа wq не поддерживаются. Q принудительно завершает работу без сохранения изменений.
  • Проверка текущей строки: Ввод команды . выводит содержимое текущей строки, а команда = выводит номер текущей строки.
  • Использование регулярных выражений: Вместе с командой s (substitute) вы можете использовать мощные регулярные выражения для поиска и замены текста.


Те же команды в категории