Назад | Перейти на главную страницу

Удалите предложение, которое начинается со слова «отметка» и заканчивается на «;»

У меня есть сотни файлов, содержащих предложения, начинающиеся с отметка и заканчивается точка с запятой(;).

eg: mark is driving a car;

мне нужно удалить каждое предложение, начинающееся с отметка и закончить ";"

Как это сделать с помощью sed или аналогичные инструменты.

Я использовал sed для замены шаблонов, но не знаю, как удалять шаблоны.

Поскольку все подходящие предложения находятся в одной строке, и вы говорите, что уже знакомы с sed, это просто частный случай использования sed для замены одного шаблона другим, в данном случае ничего не заменяя:

sed -e 's/mark.*;//' 

Вы можете использовать sed:

sed -e '/^mark.*;$/d'

Это удаляет все, начиная с «отметки» и заканчивая «;».

Вы можете использовать d в sed чтобы удалить строку:

$ echo -e "mark is driving a car;\nbob is driving a car;" | sed -e '/^mark/d'
bob is driving a car;