删除vi中的一行

I-M*_*-JM 203 vim terminal vi

如何删除VI中的一行?

这是我现在正在做的事情:

  1. 打通终端alt+ ctrl+t
  2. vi a.txt
  3. 我将光标移动到要删除的行,那么应该使用什么组合键来删除 vi 编辑器中的行

Ger*_*ert 343

dd将删除那条线(实际上它会切断它)。所以你可以通过粘贴它p


Sha*_*off 22

正如其他人所说,dd如果您处于正常模式(按ESC)以确保您处于正常模式,但默认情况下,您将处于正常模式。您可能已经发现 vi 不像您期望的编辑器那样行事。它非常独特,这些独特的功能使其非常强大且易于使用。如果您想了解更多信息,可以vimtutor在命令行上运行,您将获得有关如何使用它的基础知识的快速教程(可能需要一个小时的阅读/实验时间)。

现在,您可以使用具有更熟悉界面的编辑器。大多数系统都有nano. 您可以键入nano a.txt以打开您的文件nano。您甚至可以更进一步 - 没有任何理由必须使用基于终端的编辑器。由于您提到使用 ( Ctrl+ Alt++ T) 并且这是 Ubuntu 和其他一些 Gnome 发行版中的默认快捷方式,所以如果您没有gedit安装,我会感到惊讶。在命令行中,尝试一下gedit a.txt,您将获得一个图形编辑器。


Cal*_*leb 13

要删除光标下的行,请使用dd

delete 命令接受所有正常的位置修饰符,因此如果您在要删除的行下方的行首,您可以dk进入删除模式并向上移动一行,删除光标经过的所有内容。

您还可以指定重复,因此5dd将删除光标下的行五次,有效地删除当前和后面的四行。

  • 或`d5d`。我不知道为什么,但我更喜欢这个。(有趣的事实:`NdMd` 删除 _N_ × _M_ 行) (8认同)

小智 8

Esc dd 转到要删除的行后

  • 如果您在插入模式下使用箭头键转到正确的行,则需要转义。 (4认同)
  • 如果您可以转到要删除的行,则不需要转义。 (2认同)