Утилита обработки текстов — sed. Некоторые примеры.
Category: GNU/Linux,sed,утилиты
Утилита sed.
Sed (от англ. Stream EDitor) — консольная утилита для редактирования текстовых потоков. Она позволяет изменять, добавлять, удалять или трансформировать строки в текстовых файлах и потоках данных.
Основная особенность sed — он читается строка за строкой, выполняет заданные операции и выводит результат, не изменяя исходный файл, если это не указано явно.
Как найти строку и закомментировать её?
Иногда бывает нужно скриптом поправить конфигурационные файлы.
Здесь рассмотрим как найти определённую строку по ключевому слову и закомментировать её или снять комментарий с помощью утилиты sed.
Вот как ставится комментарий:
$ sed -i '/<слово>/s/^/#/' /<файл>
sed -i— перезаписать файл;<слово>— ищем строки с этим словом;s— заменить;^— что заменяем (начало строки);#— на что заменяем;<файл>— файл, который будем редактировать.
Снять комментарий можно так:
$ sed -i '/<слово>/s/#//' /<файл>
Пример:
$ cd ~ $ mcedit test.txt $ cat test.txt
Ответ:
яблоко
груша
вишня
$ sed -i '/вишня/s/^/#/' test.txt $ cat test.txt
Ответ:
яблоко
груша
#вишня
$ sed -i '/вишня/s/#//' test.txt $ cat test.txt
яблоко
груша
вишня
Оригиналы источников информации.
- telegra.ph «Bash. Найти строку и закомментировать её используя sed».