linux vim 删除多行

使用linux服务器,免不了和vi编辑打交道,命令行下删除数量少还好,如果删除很多,光靠删除键一点点删除真的是头痛,还好Vi有快捷的命令可以删除多行、范围。

删除行

在Vim中删除一行的命令是dd。

以下是删除行的分步说明:

1、按Esc键进入正常模式。

2、将光标放在要删除的行上。

3、键入dd并按E​​nter键以删除该行。

注:多次按dd将删除多行。

删除多行

要一次删除多行,请在dd命令前添加要删除的行数,例如,要删除五行,请执行以下操作:

1、按Esc键进入正常模式。

2、将光标放在要删除的第一行上。

3、键入5dd并按E​​nter键以删除接下来的五行。

删除行范围

删除一系列行的语法如下:

:start,endd

例如,要删除从3到5的行,您可以执行以下操作:

1、按Esc键进入正常模式。

2、输入:3,5d,然后按Enter键以删除行。

您还可以使用以下字符来指定范围:

.(点)-当前行。

$-最后一行。

%-所有行。

这里有一些例子:

:.,$d-从当前行到文件末尾。

:.,1d-从当前行到文件开头。

10,$d-从第十行到文件末尾。

删除所有行

要删除所有行,您可以使用代表所有行的%符号或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/^KaTeX parse error: Expected group after '^' at position 14: /d-删除所有空白行,模式^̲匹配所有空行。

:g/^\s*$/d-删除所有空白行,与前面的命令不同,这还将删除具有零个或多个空格字符(\s*)的空白行。

相关推荐
学传打活2 天前
【边打字.边学昆仑正义文化】_进阶篇5 宇宙星系的运转(续1)
微信公众平台·1024程序员节·汉字·昆仑正义文化
fangzhanpeng1689 天前
快速掌握C#语言基础知识点(1.基础数据类型)
开发语言·c#·1024程序员节
无己心12 天前
面向多平台 AI 搜索引擎的适配层架构设计
前端·人工智能·搜索引擎·ai·1024程序员节
u01030552717 天前
AI驱动的安卓UI自动生成功能实现
人工智能·1024程序员节
u01030552718 天前
长株潭智能体赋能腾讯元器链接共享
1024程序员节
云贝贝贝19 天前
OceanBase认证体系介绍与备考指南
运维·服务器·oceanbase·1024程序员节
u01030552719 天前
Java图像处理实战指南
人工智能·1024程序员节
u01030552720 天前
Java AWT鼠标事件全解析
人工智能·1024程序员节
u01030552722 天前
Java实用类应用精讲
人工智能·1024程序员节
u01030552723 天前
Java I/O核心操作实战
人工智能·1024程序员节