关于linux:如何在VI编辑器中删除所选文本

How to delete selected text in VI editor

我正在使用Putty和vi编辑器。如果我用鼠标选择5行,我想删除这些行,我该怎么做?

此外,如何使用键盘选择行,就像在Windows中按shift并移动箭头选择文本一样?我怎么能在vi中做到这一点?


I am using putty and vi editor if select 5 lines using mouse and i want to delete those lines how can i do that

忘记鼠标。要删除5行,请执行以下操作之一:

  • 转到第一行并键入d5dakbd(ddakbd删除一行,d5dakbd删除5行)~或~
  • 键入shift v以进入线条选择模式,然后使用j向下移动光标(是的,使用hjhl分别向左、向下、向上、向右移动,这比使用箭头更有效),键入h删除选择。

Also how can i select the lines from keyboard like in windows i pres shift and move the arrows to select the text. how can i do that in vi

如我所说,要么使用shift v进入线条选择模式,要么使用vbkbd进入字符选择模式,要么使用ctrl v进入块状选择模式。然后使用hjkl移动。

我建议花些时间和VIM导师(运行vimtutor)一起,以非常教条的方式更加熟悉VIM。

也见

  • 这是对VIM最有效的捷径的回答?(这是我最喜欢的答案之一)。
  • 使用VIM高效编辑


用第六种方法去做。

删除5行按:5dd(5删除)

要选择(实际复制到剪贴板),请键入:10yy

这有点难掌握,但在使用这些远程终端时学习起来非常方便

了解一些编辑的学习曲线:

http://unix.rulez.org/~calver/pictures/curves.jpg网站


如果您想使用行号删除,您可以使用

1
:startingline, last line d

例子:

1
:7,20 d

此示例将删除第7行到第20行。.


用鼠标突出显示只突出显示终端上的字符。vi并没有真正得到这些信息,所以你必须以不同的方式突出显示。

按"V"键进入选择模式,然后使用箭头键移动该模式。要删除,请按X。要一次选择行,请按SHIFT+V。要选择块,请尝试使用ctrl+v。这很好地解决了在代码前面插入大量注释行的问题。)

我对Vi没意见,但我花了一段时间才有所改善。我的同事给我推荐了这个练习表。当我忘记一些事情的时候,我会在墙上留一份打印件。

快乐黑客!


当使用类似Putty的终端时,通常鼠标单击和选择不会传输到远程系统。所以,vi不知道你刚刚选择了一些文本。(这有例外,但通常不会传输鼠标操作。)

要删除vi中的多行,请使用5dd之类的工具删除5行。

如果您不使用VIM,我强烈建议您这样做。您可以使用视觉选择,在视觉选择中按AVBKBD启动一个视觉块,将光标移动到另一端,然后按D删除(或任何其他编辑命令,如要复制的Y)。


如果要从当前行号中删除文件中的所有行,请使用dG,它将删除所有行(shift g)表示文件结束。