it-swarm-ru.tech

удалить строку в vi

Как я могу удалить строку в VI?

Вот что я сейчас делаю:

  1. Откройте терминал alt + ctrl + t
  2. vi a.txt
  3. Я перемещаю курсор на строку, которую хочу удалить, затем какая комбинация клавиш должна использоваться для удаления строки в редакторе vi?
189
I-M-JM

Нажатие dd удалит эту строку (фактически она обрежет ее). Таким образом, вы можете вставить его через p.

325
Gert

Как говорили другие, это dd, если вы находитесь в обычном режиме (нажмите ESC), чтобы убедиться, что вы находитесь в обычном режиме, но по умолчанию вы будете. Возможно, вы обнаружили, что vi действует не так, как вы ожидаете, что редактор будет действовать. Он довольно уникален, и эти уникальные функции делают его чрезвычайно мощным и быстрым в работе. Если вы хотите узнать больше, вы можете запустить vimtutor в командной строке, и вы получите краткое (может быть, за час чтения/эксперимента) учебное пособие по основам его использования.

Теперь вы можете использовать редактор с более знакомым интерфейсом. Большинство систем имеют nano. Вы можете напечатать nano a.txt чтобы открыть ваш файл в nano. Вы даже можете пойти дальше - нет никаких причин использовать редактор на основе терминала. Так как вы упомянули использование (Ctrl+Alt++T) и это ярлык по умолчанию в Ubuntu и некоторых других дистрибутивах Gnome, поэтому я был бы удивлен, если бы у вас не было установлено gedit. В командной строке попробуйте gedit a.txt и ​​вы получите графический редактор.

23
Shawn J. Goff

Чтобы удалить строку под курсором, используйте dd.

Команда delete принимает все обычные позиционные модификаторы, поэтому, если вы находитесь в начале строки ниже той, которую хотите удалить, вы можете просто dk перейти в режим удаления и переместиться на одну строку вверх, удалив все курсор пройден.

Вы также можете указать повторение, поэтому 5dd удалит строку под курсором пять раз, эффективно удаляя текущую и следующие четыре строки.

12
Caleb

Esc dd после перехода на строку, которую вы хотите удалить

8
Anoop

Убедитесь, что вы находитесь в "нормальном" режиме, а затем нажмите dd. Команда ndd удалит n строк из строки, на которой находится курсор.

4
user6619

В визуальном режиме

shift + V, выберите линии, затем D

ctrl + V, выберите столбцы, затем D

1
Ben
  • dd удалите (обрежьте) строку и оставайтесь в режиме COMMAND.
  • S удалите (обрежьте) строку и перейдите в режим INSERT.
0
Yas