У меня есть файл следующего вида:Удалить до конца строки после матча, держать линии не соответствуют
interesting text-MIB blah blah blah
VERY INTERESTING TEXT
interesting text-MIB blah blah blah
В каждой строке, содержащей «-MIB» строку, я хотел бы удалить текст после этой строки, до конца строки.
Следующая команда, кажется, работает как задумано:
sed -i -n -e 's/-MIB.*$/-MIB/p' ./myfile
Моя проблема заключается в том, что он также удаляет строки, где мой шаблон не найден. Здесь строка «ОЧЕНЬ ИНТЕРЕСНЫЙ ТЕКСТ» будет удалена. Я не очень хорошо знаком с sed. Что я делаю не так? Является ли sed подходящим для такого вида лечения?
Спасибо за дополнительное объяснение. –