1.删除单行
1.1 删除当前光标所在的行
普通模式下,输入 dd 即可删除光标所在的行
1.2 删除指定某行
命令行模式下,输入
[num]d
,如删除第5行,输入 5d
1.2.1 删除最后一行
命令行模式下,输入
$d
2.删除多行
2.1当前位置删除n行
普通模式下,在你使用dd命令删除一行之前,你可以在它前面指定一个数字,以便在 Vim 中一次删除几行。
[num]dd
当你指定数字代替 时num,Vim 将开始删除行,你可以认为这是 Vim 多次执行dd命令num。
如在普通模式,输入
5dd
,会在当前行向后(包括当前行)删除5行
2.2 指定要删除的行范围
用于指定范围的字符(不懂继续往后看)
.
当前行$
文件中的最后一行%
所有行
提高移动速度的命令
gg
移到缓冲区的第一行。G
移到缓冲区的最后一行。
2.2.1 删除m-n行
命令行模式下,
:[begin],[end]d
如图所示,输入
3,5d
删除第3行-第5行之间的数据
111111222222333333444444555555666666777777888888999999
~
~
:3,5d
按下回车后,结果如下
111111222222666666777777888888999999
~
~
2.2.2 删除当前行之前的所有行
命令行模式,输入
1,.-1d
2.2.3 删除当前行之后的所有行
命令行模式下,输入
.+1,$d
3 删除所有行
①
按一下ESC键,确保退出编辑模式
按 两次g键,即gg。 让光标移动到文本的首行
按 dG键。 其中d小写,G大写
②
按一下ESC键,确保退出编辑模式
输入:1,$d
③
按一下ESC键,确保退出编辑模式
输入:%d
%表示文件中的所有行。
4 删除与特定模式匹配的行
删除匹配特定模式的行
:g/PATTERN/d
删除与指定模式不匹配的行
:g!/PATTERN/d
分解它,我们得到以下元素:
- g- 全局搜索(即整个文件)
- !- 反向匹配
- PATTERN- 要匹配的模式
- d- 删除命令
举例
- 删除包含text关键字的行
:g/text/d
- 删除不包含#关键字的行
:g!/#/d
- 删除所有空行
:g/^$/d
- 删除以#开的的注释内容
:g/^#/d
版权归原作者 清风169 所有, 如有侵权,请联系我们删除。