В этом руководстве мы объясним команду Linux SED на реальных примерах. SED (Stream Editor) — одна из наиболее часто используемых команд Linux в скриптах и командных строках. Она ищет, заменяет, вставляет и удаляет строки. Наиболее распространенное применение команды SED — поиск и замена строки в файле без его открытия, что экономит время. Системные администраторы регулярно используют эту команду при написании скриптов и автоматизации задач на сервере.
В следующих параграфах мы научим вас всему, что вам нужно знать о команде SED. Давайте начнем!
Предварительные условия
- ОС Linux VPS, например Ubuntu, Debian или AlmaLinux
- Привилегии пользователя: root или non-root пользователь с привилегиями sudo
Синтаксис команды SED
Основной синтаксис команды SED следующий:
|
|
Создайте txt файл
Сначала один файл; мы будем использовать его для всех примеров в следующих параграфах. Создайте один txt-файл:
|
|
Вставьте следующие строки кода:
|
|
Заменить строку в файле
Этот пример предназначен для замены определенной строки во всем файле .txt. Например, чтобы заменить строку «номер» на слово «цифра», вам нужно выполнить следующую команду:
|
|
После выполнения этой команды вы получите следующий вывод:
|
|
Заменить строку в определенной строке
Чтобы заменить строку «это» в третьей строке на «был», выполните следующую команду:
|
|
Вы должны получить следующий результат:
|
|
Заменить определенное вхождение в строке файла
Чтобы заменить строку в определенном вхождении в строке файла, например, слово «это» во втором вхождении на «был», нужно выполнить следующую команду:
|
|
Вы заметите, что во второй и третьей строках слово «это» во втором случае заменено на «был».
|
|
Печатать только строки с замененным текстом
Как видите, выводом стал весь текст после изменения. Если мы хотим увидеть только измененные строки, нам нужно использовать следующую команду:
|
|
Вы должны увидеть только строки с изменениями:
|
|
Заменить строку с Ignore Case
Чтобы заменить определенную строку, будь то с заглавными или строчными буквами, вам нужно использовать флаг i
в команде. Давайте заменим слово «два» на слово «серебра»:
|
|
Вы должны получить только измененные строки:
|
|
О команде SED
Если вы хотите узнать подробности о команде SED, вы можете выполнить команду ниже:
|
|
Вы получите полное объяснение команды, опций, синопсис и т.д.
|
|
Вот и все. Вы узнали несколько основных и важных команд SED в ОС Linux.
Если вам понравился этот пост о команде SED, поделитесь им с друзьями или оставьте комментарий ниже.