当前位置: 首页 > news >正文

vi 删除指定范围的行,不用再反复按 dd

目前各种强大的现代编辑工具可能已经让很多人忘了vi的用法,但笔者最近在配合调试客户环境的代码时,就遇到经常要直接在那黑乎乎的putty窗口下直接使用vi来操作,反复去删除指定多行代码的场景很是痛苦,加上远程网络时而还会不稳,连续的dd很不方便且容易误操作。所以就倒逼自己回来复习了下vi删除行的快捷操作。

在 vi 里删除多行内容时,很多人会下意识连续按dd,或者先算清楚要删多少行,用d数字d。其实删除指定范围的行,可以直接用行号范围完成,简单很多也不用去计算和定位光标。

01 | 删除指定行号范围

比如要删除第 345 行到第 376 行内容,不用一直按dd,也不用自己计算一共多少行。

直接输入:

:345,376d

然后回车即可。

如果发现删除错了,按:

u

就可以回退刚刚的整个删除操作,然后继续指定正确的范围。

什么?你说怎么知道内容范围是多少行?这样设置就可以看到每行的行号了:

:set nu

02 | 快速定位到某一行

如果想快速定位到某一行,比如第 222 行,可以直接输入:

:222

回车后就会到指定行。

这个配合范围删除使用,会更方便。先定位,再确认当前行和目标行,最后执行删除命令。

03 | 记住几个实用指代

vi 里有几个非常实用的指代含义:

.代表当前行。

$代表最后一行。

%代表所有行。

例如,从当前行删除到文件末尾:

:.,$d

从第 22 行删除到文件末尾:

:22,$d

04 | 也可以往回删除

范围删除也可以从当前行往前删,比如从当前行删除到文件开头:

:.,1d

笔者测试的环境里,这种往回删除会出现提示:

Backwards range given, OK to swap (y/n)?

确认没错的话,输入y回车即可。

05 | 删除所有行

笔者之前习惯用:

d10000d

前提是确认 10000 大于文件行数,其实大于也没关系,数字搞更大,或者多执行几次。

但实际上,想删除所有行,可以直接使用%

:%d

然后按 Enter 键即可删除所有行。

也可以写成:

:1,$d

效果一样,看个人习惯,或者看自己更容易记住哪个。

http://www.jsqmd.com/news/1091749/

相关文章:

  • 编写高质量 Skill 系列 -- 如何设计需求分析与用例生成的 SKILL
  • 【2026最新】在 Win11 WSL2 (Ubuntu 24.04) 上搭建 Synopsys VCS/Verdi 2023数字 IC 设计 EDA 工具链
  • 如何在10分钟内解决离线音乐库的歌词同步难题?LRCGET批量歌词下载终极指南
  • Seedance 2.0 做短视频分镜,我最在意的不是“出片”,而是能不能交给团队复用
  • 洛谷 P1854 花店橱窗布置:从 OJ 题解到动态规划实战心法
  • 别再熬夜写论文了!6款AI写作辅助平台,一键生成逻辑连贯初稿!
  • 英雄联盟皮肤资源库技术深度解析:从文件结构到游戏资产管理的终极指南
  • 程序员别再乱堆书签!这个编程合集,让你写代码全程不被打断
  • UART串口环回测试中的校验位实战:从原理到FPGA实现
  • FMEA×控制计划×PPAP自动联动,这才是研发管理的天花板-全星研发项目管理APQP软件系统#APQP #PLM #汽车电子 #芯片研发 #新能源 #项目管理软件
  • 终极指南:如何用PIDtoolbox彻底解决无人机飞行稳定性问题
  • TLS 1.3如何防御中间人攻击:从加密原理到Nginx实战部署
  • Java国密算法实战:SM2/SM3/SM4完整代码示例与Bouncy Castle集成
  • 国内外网站建设选择-主流网站建设工具客观对比(2026年6月最新)含零代码、AI编程、源码定制交付
  • 一次函数图像工厂:用 SymPy 自动生成 y=kx+b 对比动画
  • 慕课助手:打破在线学习效率瓶颈的浏览器插件解决方案
  • CPUDoc深度指南:解锁CPU隐藏性能的5个关键技巧
  • 2026 年深圳远程IO模块选型指南:明达智控MR30系列
  • 循环码编码解码matlab仿真(P124302009 罗睿章, P124302167张国峰)
  • Mi-Create终极指南:零基础打造个性化小米手表表盘
  • 如何将手机摄像头变成OBS专业直播源:DroidCam OBS插件完整指南
  • Nacos Derby反序列化漏洞深度剖析与安全加固实战
  • 2026权威实测|企业级AI编程应用场景全梳理:SaaS后台工具链选型指南
  • 将Android手机打造成随身Linux工作站:Termux + VNC实战指南
  • 手机号逆向查询QQ号:从遗忘到找回的3分钟解决方案
  • TPA2018D1音频放大器I2C寄存器配置与驱动开发实战
  • Docker--认识Docker网络
  • Unlock Music:浏览器端音乐解锁完全指南 - 3分钟学会解密各大平台加密音乐
  • 你的FastAPI又在服务器上“跑不起来”了?来,今天咱把打包这件事彻底聊透
  • Talkie: a 13B vintage language model from 1930 —— 当“复古”遇见千亿参数时代的思考