В мире программирования есть инструменты, которые не создают ярких интерфейсов или игр, но их мощь и полезность проверены десятилетиями. Один из таких инструментов — sed. Если вы никогда о нём не слышали, представьте себе суперспособность мгновенно находить и менять слова в тысячах документов одним взмахом руки. Именно этим и занимается sed.
Sed (от англ. Stream EDitor) — это консольная программа для автоматической обработки текста. Он читает текст построчно, применяет к нему заданные вами команды и выдает результат. Его главная задача — редактировать текст без открытия файлов вручную.
Представьте, что у вас есть огромный список гостей на свадьбу в файле, и вы решили поменять дату мероприятия. Вместо того чтобы листать документ и исправлять дату в каждом месте, вы даёте sed одну команду: «Найди везде „23.02.2026“ и замени на „30.05.2026“». Sed сделает это за миллисекунды.
Хотя возможности sed огромны, вот основные сценарии его применения:
Допустим, у вас есть файл note.txt со строкой: "Встреча запланирована на понедельник."
Вы хотите заменить слово «понедельник» на «вторник». Команда в терминале будет выглядеть так:
sed 's/понедельник/вторник/' note.txt"s" означает команду «заменить». Sed найдёт первое вхождение слова «понедельник» в каждой строке и поменяет его на «вторник». Результат он покажет вам на экране: "Встреча запланирована на вторник."
По умолчанию sed только выводит изменённый текст на экран, исходный файл остаётся нетронутым. Это безопасно — вы всегда видите результат перед реальными изменениями. Чтобы сохранить изменения прямо в файле, нужно использовать специальный ключ (например, -i в Linux/macOS). Но с ним нужно быть осторожнее.
's/что_меняем/на_что_меняем/'"Потоковый редактор" sed может показаться сложным только на первый взгляд. На самом деле его базовые операции очень просты и логичны. Освоив даже 10% его возможностей, вы получите в своё распоряжение невероятно полезный инструмент для повседневной работы с любым текстом.