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

建议收藏:运维大佬都会用的Vim命令技巧

Vim作为一款强大的文本编辑器,是linux运维必会的技能。然而,对于初学者来说,可能只会一些简单的编辑命令。

今天,我们将分享一些实用的Vim命令技巧和实用场景,帮助你快速提升运维效率,轻松驾驭Vim,让你的小伙伴刮目相看!

1. 删除技巧

1.1 删除单个字符

  • x:删除光标所在位置的字符。

  • X:删除光标前一个字符。
    删除引号内字符
    di"

  • 将光标放在双引号内的任意位置

  • 按下d(删除) +i"(inside double quotes)

  • 会删除两个双引号之间的所有内容,但保留引号

1.2 删除单词

  • dw:删除从光标位置到下一个单词开头的内容。

  • daw:删除光标所在的整个单词(包括周围空格)。

  • diw:删除光标所在的单词(不包括周围空格)。

1.3 删除行

  • dd:删除整行。

  • D:删除从光标位置到行尾的内容。

1.4 删除多行

  • ndd:删除从当前行开始的n行。例如,3dd删除3行。

2. 替换技巧

2.1 替换单个字符

  • r:替换光标所在位置的字符。例如,ra将当前字符替换为a

2.2 替换多个字符

  • R:进入替换模式,从光标位置开始替换字符,按Esc退出。

2.3 全局替换

  • :%s/old/new/g:将文件中所有的old替换为new

  • :%s/old/new/gc:替换时进行确认。

3. 跳转技巧

3.1 行内跳转

  • 0:跳转到行首。

  • ^:跳转到行首第一个非空白字符。

  • $:跳转到行尾。

3.2 文件内跳转

  • gg:跳转到文件开头。

  • G:跳转到文件末尾。

  • nG:跳转到第n行。例如,10G跳转到第10行。

3.3 标记跳转

  • m{a-z}:在当前光标位置设置标记。例如,ma设置标记a

  • {a-z}`:跳转到标记位置。例如,a跳转到标记a`。

4. 移动技巧

4.1 光标移动

  • h:左移。

  • j:下移。

  • k:上移。

  • l:右移。

4.2 单词移动

  • w:移动到下一个单词的开头。

  • b:移动到上一个单词的开头。

  • e:移动到下一个单词的结尾。

4.3 屏幕移动

  • Ctrl + f:向下翻页。

  • Ctrl + b:向上翻页。

  • Ctrl + d:向下翻半页。

  • Ctrl + u:向上翻半页。

5. 高级实用操作技巧

5.1 批量注释

  • Ctrl + v:进入可视块模式,选择多行后按I输入#,再按Esc,即可批量注释。

  • :n1,n2s/^/#/g:将n1到n2行的行首添加#

5.2 批量缩进

  • >>:当前行向右缩进。

  • <<:当前行向左缩进。

  • n>>:从当前行开始的n行向右缩进。

5.3 批量替换

  • :n1,n2s/old/new/g:将n1到n2行之间的old替换为new

5.4 清空所有内容

  • "%d:vi打开文档后,需要清空文档再复制,可以通过此命令快速清空

  • 5.4 保留粘贴格式

场景:从vscode或者其它地方复制代码到vi编辑器经常会出现格式错乱的问题,例如额外的缩进,层级文本错乱或者自动换行问题

1、在普通模式下启用paste模式 :set paste 2、进入插入模式并粘贴文本 i (或按Insert键) ,然后粘贴文本

  • 5.5 转换字符集格式

  • windows上编辑的shell脚本上传到linux系统,由于字符集问题,脚本执行时经常会出现^M: bad interpreter错误

vim中,可以通过如下方法解决(cat -A filename # 显示所有字符)

# 1. 使用 Vim 打开文件 vim /tmp/test.sh # 2. 查看当前文件格式 :set ff? # 输出:fileformat=dos # 3. 转换为 Unix 格式 :set ff=unix 或者:set fileformat=unix # 4. 查看文件内容确认 :set list # 可以看到行尾现在只有 $(LF),没有 ^M(CR)

结语

掌握上面这些Vim使用技巧,你将能够更加高效地进行文本编辑。Vim的学习是一个不断积累和实践的过程,希望这些技巧能帮助你在使用Vim时更加得心应手。

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

相关文章:

  • 收集知识≠知识,知识在脑中,工具只是辅助
  • 计算机毕业设计之springboot校园智能停车收费监控系统的设计与实现
  • 教育行业用百度UM搭建校务系统时,如何处理WORD通知中图片的格式兼容?
  • 2026年最新版 Bloodshed Dev C++下载与安装配置完整图文教程
  • AI市场分析:原圈科技揭秘企业如何赢得未来十年竞争
  • 运维系列【仅供参考-推荐】:为网站配置HTTPS(Nginx SSL证书设置)
  • DHCP简介
  • 风险周报 | 全球供应链风险事件汇总:多地发生火灾,车厘子等迎涨价潮!
  • 互联网站群管理时,百度UMEDITOR如何统一处理多站点WORD图片粘贴需求?
  • 期货与期权一体化平台结构边界定义实践指南
  • 全网最全 9个AI论文写作软件测评:研究生毕业论文+开题报告必备工具推荐
  • SpringMVC中百M大文件上传如何分块处理?
  • 大宗商品风险对冲系统监测方案设计与实施
  • 网页上SpringBoot如何支持百M大文件的分段上传?
  • 基于深度学习YOLOv12的美国硬币识别检测系统(YOLOv12+YOLO数据集+UI界面+登录注册界面+Python项目源码+模型)
  • 本科生必看!最强的AI论文平台 —— 千笔写作工具
  • <span class=“js_title_inner“>恒运昌科创板上市:募资15.6亿 市值258亿 第三季营收净利降46%</span>
  • 基于深度学习YOLOv11的美国硬币识别检测系统(YOLOv11+YOLO数据集+UI界面+登录注册界面+Python项目源码+模型)
  • 生肖起名/宝宝起名的专业公司哪家好?
  • 亲测好用 10个一键生成论文工具:自考毕业论文+开题报告高效写作测评
  • 基于深度学习YOLOv12的扑克牌识别检测系统(YOLOv12+YOLO数据集+UI界面+登录注册界面+Python项目源码+模型)
  • 基于深度学习YOLOv12的野生动物识别检测系统(YOLOv12+YOLO数据集+UI界面+登录注册界面+Python项目源码+模型)
  • 大模型颠覆行业?那我们如何驾驭大模型把握住行业风口呢?
  • SEW变频器MCV40A0750-503-4-0T 08274851
  • 收集知识ne;知识,知识在脑中,工具只是辅助
  • 基于深度学习YOLOv11的安全背心穿戴识别检测系统(YOLOv11+YOLO数据集+UI界面+登录注册界面+Python项目源码+模型)
  • 2026年口碑好的彩色打印机租赁供应商推荐,服务靠谱价格优
  • SEW变频器MCV40A0300-203-4-00 08272719
  • MySQL MGR自动化安装工具,支持单主和多主
  • 攻防世界-Hidden Write