Как удалить строки в Vim / Vi

Vim: Удалить строки

Vim или его предшественник Vi предустановлены в большинстве дистрибутивов Linux и macOS. Знание основ Vim важно, если вы системный администратор или просто обычный пользователь Linux.

Довольно часто при работе с текстовыми файлами возникает необходимость удалить одну или несколько строк.

В этой статье показано, как удалять строки в Vim/Vi.

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

Команда удаления строки в Vim — dd .

Ниже приведены пошаговые инструкции по удалению строки:

  1. Нажмите клавишу Esc , чтобы перейти в обычный режим.
  2. Установите курсор на строку, которую вы хотите удалить.
  3. Введите dd и нажмите Enter, чтобы удалить строку.

Нажатие клавиши dd несколько раз приведет к удалению нескольких строк.

Удаление нескольких строк

Чтобы удалить сразу несколько строк, добавьте к команде dd количество строк, которые нужно удалить. Например, чтобы удалить пять строк, выполните следующие действия:

  1. Нажмите клавишу Esc , чтобы перейти в обычный режим.
  2. Установите курсор на первую строку, которую вы хотите удалить.
  3. Введите 5dd и нажмите Enter, чтобы удалить следующие пять строк.

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

Синтаксис удаления диапазона строк следующий:

 : [ start ] , [ end ] d

Например, чтобы удалить строки с 3 по 5, выполните следующие действия:

  1. Нажмите клавишу Esc , чтобы перейти в обычный режим.
  2. Введите :3,5d и нажмите Enter, чтобы удалить строки.

Для указания диапазона вы также можете использовать следующие символы:

  • . (точка) — Текущая строка.
  • $ — Последняя строка.
  • % — Все строки.

Вот несколько примеров:

  • :.,$d — От текущей строки до конца файла.
  • :.,1d — От текущей строки до начала файла.
  • 10,$d — С 10-й строки до конца файла.

Удалить все строки

Чтобы удалить все строки, можно использовать либо символ % , представляющий все строки, либо диапазон 1,$ :

  1. Нажмите клавишу Esc , чтобы перейти в обычный режим.
  2. Введите %d и нажмите Enter, чтобы удалить все строки.

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

Синтаксис удаления нескольких строк по определенному шаблону следующий:

 : g // d

Глобальная команда ( g ) сообщает команде удаления ( d ) удалить все строки, содержащие .

Чтобы сопоставить строки, не соответствующие шаблону, добавьте восклицательный знак ( ! ) перед шаблоном:

 : g ! // d

Шаблон может быть буквальным совпадением или регулярным выражением . Ниже приведены несколько примеров:

  • :g/foo/d — Удаляет все строки, содержащие слово «foo». Также удаляет строки, где «foo» встречается в более длинных словах, например, «football».
  • :g!/foo/d — Удалить все строки, не содержащие строку «foo».
  • :g/^#/d — удалить все комментарии из скрипта Bash. Шаблон ^# означает каждую строку, начинающуюся с # .
  • :g/^$/d — Удалить все пустые строки. Шаблон ^$ соответствует всем пустым строкам.
  • :g/^s*$/d — удалить все пустые строки. В отличие от предыдущей команды, эта команда также удаляет пустые строки, содержащие ноль или более пробелов ( s* ).

Заключение

Мы показали вам, как удалять строки в Vim.

Если вы новичок в Vim, посетите сайт Open Vim , где вы можете попрактиковаться в работе с Vim с помощью интерактивного руководства.

Если у вас есть вопросы, не стесняйтесь оставлять комментарии.

терминал vim

Связанные руководства

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *