你知道吗? Vim 也是一个 IDE

一个1991年正式发布,如今已经快35岁的「高龄」的代码编辑器Vim

vim是一款强大的编辑器,做过Linux c开发的同学应该非常熟悉,java相关的开发人员在Linux修改部署的配置文件等也是经常会使用到vim,本文将vim中常用操作进行整理,供大家装逼使用

本文将围绕以下常用操作进行整理总结,看完你也可以在Linux修改部署配置文件等操作

  • 复制粘贴
  • 添加删除
  • 搜索替换
  • 注释

vim工作模式

基本上 vi/vim 共分为三种模式,命令模式(Command Mode)、输入模式(Insert Mode)和命令行模式(Command-Line Mode)。

命令模式

用户刚刚启动 vi/vim,便进入了命令模式。

此状态下敲击键盘动作会被 Vim 识别为命令,而非输入字符,比如我们此时按下 i,并不会输入一个字符,i 被当作了一个命令。

命令模式常用的几个操作:

  • 切换到输入模式:在光标当前位置开始输入文本--i;在光标下一个位置开始输入文本--a;在当前行的下方插入一个新行--o(小写);在当前行的上方插入一个新行--O(大写) 。
  • 切换到底线命令模式:切换到底线命令模式--:(冒号) 以在最底一行输入命令
  • 剪切(删除)字符: 剪切(删除)当前光标所在处的字符--x;连续向后剪切(删除) n 个字符--nx;剪切(删除)当前光标所在处的前一个字符--X;连续向前剪切(删除) n 个字符--nX
  • 剪切(删除)行:剪切(删除)光标所在行--dd;剪 切光标所在的向下 n 行--ndd
  • 复制行:复制光标所在行--yy
  • 粘贴: 粘贴剪贴板内容到光标下方-- p(小写);粘贴剪贴板内容到光标上方--P(大写)。
  • 撤销:撤销上一次操作--u
  • 重做:重做上一次撤销的操作--Ctrl + r

输入模式

在命令模式下按下 i 就进入了输入模式,使用 Esc 键可以返回到命令模式。

输入模式中常用的几个操作:

  • 切换光标为输入/替换模式,光标将变成竖线/下划线-- Insert键
  • 退出输入模式,切换到命令模式-- ESC 键

底线命令模式

在命令模式下按下 :(英文冒号)就进入了底线命令模式。

输入模式中常用的几个操作:

  • 保存退出:保存文件--:w;退出 Vim 编辑器--:q;保存文件并退出--:wq:x;强制退出Vim编辑器,不保存修改--:q!
  • 显示隐藏行号:显示行号--:set nu;隐藏行号--:set nonu
  • 另存文档:将编辑的数据储存成另一个档案-- :w [filename]
  • 搜索:向光标之下寻找一个名称为 word 的字符串--/word;前一个搜寻的动作--n;『反向』进行前一个搜寻动作--N
  • 替换::n1,n2s/word1/word2/g n1 与 n2 为数字。在第 n1 与 n2 行之间寻找 word1 这个字符串,并将该字符串取代为 word2 ;:1,$s/word1/word2/g :%s/word1/word2/g 从第一行到最后一行寻找 word1 字符串,并将该字符串取代为 word2 !(常用)

在vim 中批量添加注释

批量注释: Ctrl + v 进入块选择模式,然后移动光标选中你要注释的行,再按大写的 I 进入行首插入模式输入注释符号如 // 或 #,输入完毕之后,按两下 ESC,Vim 会自动将你选中的所有行首都加上注释,保存退出完成注释。

取消注释:

Ctrl + v 进入块选择模式,选中你要删除的行首的注释符号,注意 // 要选中两个,选好之后按 d 即可删除注释,ESC 保存退出。

查看原文

相关推荐
内核程序员kevin33 分钟前
TCP Listen 队列详解与优化指南
linux·网络·tcp/ip
朝九晚五ฺ5 小时前
【Linux探索学习】第十四弹——进程优先级:深入理解操作系统中的进程优先级
linux·运维·学习
自由的dream5 小时前
Linux的桌面
linux
xiaozhiwise5 小时前
Makefile 之 自动化变量
linux
意疏8 小时前
【Linux 篇】Docker 的容器之海与镜像之岛:于 Linux 系统内探索容器化的奇妙航行
linux·docker
BLEACH-heiqiyihu8 小时前
RedHat7—Linux中kickstart自动安装脚本制作
linux·运维·服务器
一只爱撸猫的程序猿8 小时前
一个简单的Linux 服务器性能优化案例
linux·mysql·nginx
我的K84099 小时前
Flink整合Hudi及使用
linux·服务器·flink
1900439 小时前
linux6:常见命令介绍
linux·运维·服务器