Удаление определенных строк из файла в командной строке Linux

Удаление n-ой строки из файла

sed -i '7d' filename

-i: Эта опция включает редактирование на месте. По умолчанию sed отображает только вывод. С опцией -i он изменяет фактический файл, не отображая его на дисплее.
7d: Здесь 7 – это номер строки, а d указывает на удаление строки.
filename: Это файл, который вы хотите изменить. Вы также можете указать абсолютный или относительный путь, если файл находится в другом каталоге.


Удалить первую строку файла в командной строке Linux.

sed -i '1d' filename

Если вы хотите увидеть результат манипуляции, не изменяя сам файл, не используйте опцию -i команды sed.

Удаление последней строки с помощью sed

sed -i '$d' filename.txt

Удаление диапазона строк

Удалить строки с 11 по 15, можно указать диапазон следующим образом:

sed -i '11,15d' filename
Обратите внимание, что при этом будут удалены строки 11 и 15, а не только те, которые находятся между ними.

Удаление строк, содержащих шаблон

Команда, показанная ниже удалит все строки, содержащие слово ‘string’:

sed -i '/string/d' filename

Удаление строк, начинающихся со слова

sed -i '/^word/d' filename

Удаление всех пустых строк

sed -i '/^$/d' filename

Тэги: ,

Вы должны залогиниттся ,чтобы оставить комментарий.