На этот вопрос уже есть ответ здесь:
В названии сказано все. Я пробовал несколько синтаксисов, все не получилось. Может быть, это невозможно с одним выстрелом ... Конечно, поисковые системы не помогли, ни руководство, которое трудно понять, ни команда info. У всех отсутствует пример с диапазоном предварительного выбора "вида"
В конце я нашел эту уничтожающую остроту:
sed -i '1795,$ {/PaTtErN/d}' file.log
быть осторожным с эти -i
флаг и прочитать руководство прежде, чем попробовать
Возможный с AWK
, также:
bash-4.3$ cat input.txt
line one
and another line
running out of ideas for text
Oh, look , banana !
some more lines
this is boring
But what is not boring ? text processing !
bash-4.3$ awk 'NR<4; NR>4 && $0!~/banana/' input.txt
line one
and another line
running out of ideas for text
some more lines
this is boring
But what is not boring ? text processing !
Идея здесь состоит в том, чтобы распечатать все строки, которые являются меньше чем 4 нетронутыми. Строки, больше, чем 4, которые не содержат определенный шаблон (в этом случае слово "банан"), будут распечатаны, и очевидно те, которые содержат его, не будет распечатан.