Linux运维必备技能:如何在 Vim 中删除多行?
【摘要】
我们都会犯错,犯错是人之常情,改进它也很重要。
如果你在 Vim 中出错,你可以dw在普通模式下使用删除一个单词。您键入dd它会删除当前行。
如果要在 Vim 中删除多行,可以使用相同的 dd Vim...
我们都会犯错,犯错是人之常情,改进它也很重要。
如果你在 Vim 中出错,你可以dw在普通模式下使用删除一个单词。您键入dd它会删除当前行。
如果要在 Vim 中删除多行,可以使用相同的 dd Vim 命令,将行数添加到该命令中。
因此,10dd将从光标底部删除 10 行(包括光标所在的行)。
让我们详细了解如何在以效率着称的编辑器中删除一行或多行。
删除单行
以下是在 Vim 中删除单行文本的步骤:
- 按 Escape (Esc) 键进入 Normal 模式
- 确保光标位于要删除的行上。
- 快速按下dd
这将删除光标所在的整行。
正如你在 gif 中看到的,我在第一行,运行dd命令只删除了第一行。
指定要删除的行数
在你使用dd命令删除一行之前,你可以在它前面指定一个数字,以便在 Vim 中一次删除几行。
下面是语法:
:[num]dd
当你指定数字代替 时num,Vim 将开始删除行,你可以认为这是 Vim 多次执行dd命令num。
指定要删除的行范围
无需指定从当前行到底部要删除多少行,您只需告诉 Vim 它应该从哪一行开始删除,一直到哪一行。
以下是删除一系列行的语法:
:[begin],[end]d
让我们分解一下这个语法…
- :(冒号)表示它是一个 Vim 命令。
- begin告诉 Vim 从哪一行开始
- end告诉 Vim 要删除的最后一行是什么
- dVim 中的删除命令
此外,以下是用于指定范围的字符(用于“开始”和“结束”):
- .(当前行)
- $(文件中的最后一行)
- %(所有行)
为了从几个例子中学习,让我们来看看它们。
- :10,45d- 从第 10 行删除到第 45 行
- :.,$d- 从当前行删除到最后一行
- :.,1d- 从当前行删除到文件开头
- :dgg- 从当前行删除到文件开头
删除所有行
如前所述,该%符号用于指定从文件开头到结尾的范围,基本上是所有行。
这意味着,要删除 Vim 中文件的所有行,您需要使用:%d命令。
删除与特定模式匹配的行
除了所有这些 Vim 魔法,你知道你可以删除匹配特定模式的行吗?
:g/PATTERN/d
要执行相反的操作,删除与指定模式不匹配的行,您可以使用下面指定的语法。
:g!/PATTERN/d
分解它,我们得到以下元素:
- g- 全局搜索(即整个文件)
- !- 反向匹配
- PATTERN- 要匹配的模式
- d- 删除命令
如果您在 Vim 中运行以下命令,它将删除行中所有具有“extern crate”模式的行。
:g/extern\ crate/d
删除所有空行
要删除空行,需要使用正则表达式进行模式匹配。下面是执行删除空行的命令:
:g/^$/d
在正则表达式中,^$模式表示任何以换行符开头的行,本质上是一个空行。
文章来源: blog.csdn.net,作者:wljslmz,版权归原作者所有,如需转载,请联系作者。
原文链接:blog.csdn.net/weixin_43025343/article/details/123961549
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
作者其他文章
评论(0)