10 分钟上手 Vim,常用命令大盘点
传闻有 180 万的程序员不知道如何退出 Vim 编辑器,真的有这么困难吗?下面给大家整理了一份 Vim 常用命令,让你 10 分钟快速上手 Vim,溜得飞起!
以下命令请在普通模式执行
1.移动光标
- j:向下
- 20j: 向下移动 20 行
- k:向上
- h:向左
- l:向右
- 0:到行首
- ^:到行首第一个字符,如果前面有空格的话
- $:到行尾
- gg:快速到文件头
- G:快速到文件尾
- 50G:跳转到第 50 行
请不要在插入模式进行光标移动,效率很低下。
2.复制
- yy:复制一行
- 8yy:向下复制8行
- yw:复制光标开始的一个单词
- y$:复制光标到行尾
- yfA:复制光标到第一个大写A中间的内容
- y2fA:复制光标到第二个大写A中间的内容
3.剪切
- x:向后剪切一个一个字符,如果是在行尾,则为向前剪切
- 4x:剪切4个
- xp:非行尾交换两个字符,如从bs变成sb
4.删除
- dd:删除一行
- 100dd:删除100行
- dw:删除一个单词
- df":删除到出现的第一个双引号
- d^:删除至行首
删除的内容会放到剪贴板,按p即可粘贴到其他地方。
5.粘贴
- p:粘贴复制或剪切的内容
- 5p:将复制或剪切的内容粘贴5次

6.替换和撤销
- r+:将游标所在字母替换为指定字母
- R:连续替换,直到按下Esc
- cc:替换整行,即删除游标所在行,并进入插入模式
- cw:替换一个单词,即删除一个单词,并进入插入模式
- u{n}:撤销一次或n次操作
- U(大写):撤销当前行的所有修改
- Ctrl+r:redo,即撤销undo的操作
7.退出编辑器
- wq:保存当前文件并退出
- wqa:保存所有文件并退出
- q!: 不保存,强制退出
- qa!: 有多个文件被打开,同时退出
以下命令请在命令模式下执行
在普通模式下,输入:即可进入。
调整文本
- %s/$/sth/ :在行尾追加sth
- %s/^M//g :替换掉dos换行符,^M使用ctrl+v + Enter即可输入
- :g/^\s$/d :删除空行以及只有空格的行*
- %s/#.*//g :删除#之后的字符
没错,这里使用的是正则。
- ce:使本行文本内容居中
- ri:使本行文本内容靠右
- le:使本行文本内容靠左

查找字符串
在普通模式下,按下/直接进入查找,输入相应的字符串按确定即可
- n:查找下一个匹配
- N:查找上一个匹配
- 2n:查找下面第二个匹配
想马上实操的同学,可以直接点开下面的课程开始练习!《Vim编辑器》
知乎专栏同步:https://zhuanlan.zhihu.com/p/89042423
10 分钟上手 Vim,常用命令大盘点的更多相关文章
- Vim常用命令【转载】
下面基本是vim的基本用法,刚开始学习可能有些不习惯.但贵在坚持,即使不习惯,也要坚持使用,做到不经过思考就能操作,你会发现真的很方便.很多操作可以通过不同的命令达到,我这里只列出常用的. 基础命令 ...
- 实用手册:130+ 提高开发效率的 vim 常用命令
Vim 是从 vi 发展出来的一个文本编辑器.代码补完.编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用.和 Emacs 并列成为类 Unix 系统用户最喜欢的编辑器.这里收录了130+程 ...
- [转]vim常用命令
[转]vim常用命令 http://www.cnblogs.com/sunyubo/archive/2010/01/06/2282198.html http://blog.csdn.net/wooin ...
- vim常用命令汇总
vim常用命令汇总: http://www.cnblogs.com/softwaretesting/archive/2011/07/12/2104435.html 定位 本行第一个字符 ctrl+$ ...
- Linux—vim常用命令
vim常用命令: 1. 键入i进入编辑模式2. esc进入命令模式3. a,进入编辑模式3. b,光标移动到单词前,end,光标移动到行尾4. home光标移动到行首5. cc,删除当前行,并进入编辑 ...
- vim常用命令总结(转)
vim常用命令 -------------------------------------------------------------------------------------------- ...
- [svc][op]vim常用命令汇总
vim常用命令汇总: 定位 本行第一个字符 ctrl+$ 本行最后一个字符 0gg 文章首行 ctrl+G 文章行尾 u 撤销(Undo) 删除 D 从当前位置删除到行尾 ("d$" ...
- 自己用到的vim常用命令
一.前言 这里整理的是我在实习期间用到的常用vim命令,特记录如下,以免忘记. 二.vim常用命令 1.vim中的光标移动 shift+6(^):跳到行首(第一个非空格字符)(注:在shell跳到行首 ...
- 转 vim常用命令总结
vim常用命令总结 vim 选择文本,删除,复制,粘贴 文本的选择,对于编辑器来说,是很基本的东西,也经常被用到,总结如下: v 从光标当前位置开始,光标所经过的地方会被选中,再按一下v结束 ...
随机推荐
- dfs與bfs常用模板
基本遍歷: //dfs void dfs(int x) { v[x]=1; for(int i=head[x];i;i=next[i]) { int y=ver[i]; if(v[y]) contin ...
- LOJ6115 汇合 树上分块
本题空间很小,那些O(nlogn)的树上lca算法在这里不顶用了,可以考虑树分块. 本题的树分块是基于深度的,即按深度每\(\sqrt n\)分一块,然后一块一块往上跳,一直跳到lca处. 对于这题, ...
- react-native-cli运行项目及打包apk失败的解决过程
刚开始学习react native,第一步自然是搭建好开发环境,node及jdk本身就有,Python2.Android studio以及Android sdk的安装倒是没什么大问题,按照官网的教程做 ...
- vue中使用element-ui自定义主题后,vue-cli跑不起来了
环境:vue-cli 2.x版本 自己在官网配置了主题并放到了项目中https://element.eleme.cn/#/zh-CN/theme 然后,我的脚手架在我的电脑中休息了几天,就跑不通了呢! ...
- GitHub 上传文件过大报错:remote: error: GH001: Large files detected.
1.查看哪个文件过大了 报错信息: remote: Resolving deltas: 100% (24/24), completed with 3 local objects. remote: wa ...
- 为什么需要动态SQL
为什么需要动态SQL 在使用EF或者写SQL语句时,查询条件往往是这样一种非常常见的逻辑:如果客户填了查询信息,则查询该条件:如果客户没填,则返回所有数据. 我常常看到很多人解决这类问题时使用了错误的 ...
- pip: failed to create process.解决方法
昨天在使用pip过程,pip提示:failed to create process. 解决方法:python -m pip install xxx 就可以了 如以matplotlib为例即:pytho ...
- spring boot 从开发到部署(二)—重启服务
上篇中,我们开发并部署上线了一个 spring boot 项目.现在需要编写服务重启脚本,保证服务器重启后能够自动的运行我们的项目. /home/web/sprint-web/restart-happ ...
- .Net Core 基于 SnmpSharpNet 开发
SNMP简介(百度百科): SNMP 是专门设计用于在 IP 网络管理网络节点(服务器.工作站.路由器.交换机及HUBS等)的一种标准协议,它是一种应用层协议. SNMP 使网络管理员能够管理网络效能 ...
- Flink 源码解析 —— 项目结构一览
Flink 源码项目结构一览 https://t.zsxq.com/MNfAYne 博客 1.Flink 从0到1学习 -- Apache Flink 介绍 2.Flink 从0到1学习 -- Mac ...