最小的VIM操作指南
最小VIM操作指南
vim的操作命令非常多,为了能开始工作,必须学会一个最小的vim操作集合,这里做个总结。
1、插入、追加、插入新行
i:在当前光标所在字符的前面插入,当前字符及其后面的字符后撤
a:在当前光标所在字符的后面插入,当前字符之后的字符后撤
o:在光标当前行的下面插入一个空行
2、光标移动
h,j,k,l:左移一个字符,下移一个字符,上移一个字符,右移一个字符
gg:移动光标到整个文档的第一行的第一个字符
G:移动光标到整个文档的最后一行的第一个字符
:n:移动光标到第n行的第一个字符
^,$:移动光标到当前行的第一个字符和最后一个字符
其他的移动用上下左右光标键搞定
3、删除、复制、粘贴、剪贴
x:删除光标所在处的字符
dd:删除光标所在的一整行文本
ndd:删除包括光标所在行在内的以下n行
yy:复制
p:粘贴到当前行之后
剪贴:vim中实现剪贴的原理是先删除,删除之后的内容会放到缓冲区中,然后直接在目标位置按下p粘贴即可。
4、撤销undo和恢复redo
撤销undo:在普通模式下 u
恢复redo:在普通模式下ctrl+r
5、查找、替换
查找:
/keyWord:从上往下查找,n继续往下查找下一个,N往上查找前面一个
?keyworld:从下往上查找,n查找上一个,N查找下面一个
替换:
:s/root/admin: 将当前行中的第一个root替换为admin,没有则不替换
:s/root/admin:将当前行中的所有的root替换为admin,没有则不替换
:3,5s/root/admin/g:将3到5行中的所有的root替换为admin,没有则不替换
:%s/root/admin/g:将文档中的所有的root替换为admin,没有则不替换
6、保存、保存退出、不保存退出、另存为
:w :保存
:wq :保存退出 :x或者ZZ(两个大写的z)也可以达到同样的目的
:q! : 不保存退出
:w b.txt:把当前文档另存为b.txt
7、几个设置
(1)显示行号:set nu或者set number
(2)显示语法高亮: syntax on
(3)自动缩进:set ai 或者 set autoindent
(4)设置在查找替换的时候不区分大小写:vim默认是区分大小写的,set ignorecase可以实现忽略大小写
8、vim的配置文件
一般情况下vim的配置文件在/etc/vimrc,而ubuntu16.04下在/etc/vim/vimrc,很多的设置可以直接放到vimrc中,免得每次都得设置。
9、多个tab页编辑
如果想在vim中打开多个文件,每个文件一个tab页,像windows下的notepad++一样,可以使用vim的多窗口编辑功能。
如果当前打开的是a.txt,想再打开一个b.txt,可以:vsplit b.txt,这样b.txt就在右边的窗口中打开了。
如果想关闭当前窗口中的文件:close可以关闭当前的窗口,关闭之前的保存等和单个窗口编辑是一样的。
多个窗口之间切换,切换用的命令如下,都是相对当前窗口而言的:
ctrl+w+h :切换道左边的窗口
ctrl+w+l:切换道右边的窗口
ctrl+w+j:切换道下边的窗口
ctrl+w+k:切换道上边的窗口
参考资料
1、《linux运维之道》
2、https://blog.csdn.net/ly890700/article/details/52662161
最小的VIM操作指南的更多相关文章
- Vim操作指南
vim具有6种基本模式和5种派生模式. 基本模式 普通模式 插入模式 可视模式 选择模式 命令行模式 Ex模式 派生模式 操作符等待模式 插入普通模式 插入可视模式 插入选择模式 替换模式 1.移动光 ...
- 我的_vimrc文件
""""""""""""""""&quo ...
- vim可视化&Linux系统安全最小化原则& su & sudo
一.vim在可视化模式下编辑 crl+v,会变成-- VISUAL BLOCK --,然后用上下左右键去选中. 多行注释: ESC进入命令行模式; Ctrl+v进入VISUAL BLOCK模式 上下左 ...
- vim实用操作指南
一.查看文件编码 :set fileencoding :set fileencoding=utf-8 通过该命令可直接将文件修改为UTF-8编码 强制以指定编码打开,vim中 :e ++enc=utf ...
- 虚拟机 ----最小安装无法使用vim编辑器
解决办法:安装 yum -y install vim-enhanced.x86_64 帮助网址http://blog.csdn.net/yexudengzhidao/article/details/7 ...
- 玩转Vim 编辑器
一:VIM快速入门 1.vim模式介绍 以下介绍内容来自维基百科Vim 从vi演生出来的Vim具有多种模式,这种独特的设计容易使初学者产生混淆.几乎所有的编辑器都会有插入和执行命令两种模式,并且大多数 ...
- 再谈vim中多窗口的编辑
参考:http://blog.csdn.net/shuangde800/article/details/11430659 很好 鼠标在各个窗口间循环移动: ctrl+w+(小写的 hjkl), &qu ...
- centos7 最小化安装没有ifconfig及修改网卡名enoxxx为ethX
问题: 1.最小化安装centos7后发现无ifconfig命令 想通过ifconfig查看ip地址发现ifconfig命令不存在,可通过命令 #ip addr //查看ip 或者 解决: ...
- centos7最小安装后常常需要添加的命令
本人下载的最小镜像文件下载地址:http://pan.baidu.com/s/1kUD2jbT 原文地址:http://blog.csdn.net/nmgrd/article/details/5176 ...
随机推荐
- git修改远端服务器地址
方法有三种: 1.修改命令 git remote set-url origin [url] 2.先删后加 git remote rm origingit remote add origin [url] ...
- Spring Boot下如何自定义Repository中的DAO方法
环境配置介绍 jdk 1.8, Spring Boot 1.5.3.RELEASE, Mysql, Spring Data, JPA 问题描述 Spring Data提供了一套简单易用的DAO层抽象与 ...
- [QT][SQLITE][QTDEMO]qt5.8_sqlite数据库_demo
qt环境:5.8 数据库:sqlite //-------------------------------------- sqlite 日期 搜索 -------------------------- ...
- 剑指Offer面试题:7.斐波那契数列
一 题目:斐波那契数列 题目:写一个函数,输入n,求斐波那契(Fibonacci)数列的第n项.斐波那契数列的定义如下: 二 效率很低的解法 很多C/C++/C#/Java语言教科书在讲述递归函数的时 ...
- flask中cookie和session介绍
flask中cookie和session介绍 一.cookie: 在网站中,http请求是无状态的.也就是说即使第一次和服务器连接后并且登录成功后,第二次请求服务器依然不能知道当前请求是哪个用户.co ...
- 使用IntelliJ IDEA开发SpringMVC网站的学习
最近开始了“使用IntelliJ IDEA开发SpringMVC网站”的学习,有幸看到一份非常完善的学习资料,笔者非常用心的详细注释了一份关于博客的开发过程和细节,并且在评论中回复大家提出的问题,非常 ...
- 【转】C# Socket编程(1)基本的术语和概念
[转自:http://www.cnblogs.com/IPrograming/archive/2012/10/10/2718371.html#Protocol] 计算机程序能够相互联网,相互通讯,这使 ...
- vue 相邻自定义组件渲染错误正确的打开方式
话不多说看问题: 当封装自定义组件时例如(自定义下拉列表)两个相同的组件在多次v-if变化时偶尔会发生渲染错误,明明赋值正确但是组建中的ajax方法可能返回的数据乱掉,或者其他神逻辑错误. 经过查询发 ...
- excel oracle字段命名(大写下划线分词)转 驼峰命名
干货: (帕斯卡) =LEFT(C251,1)&MID(SUBSTITUTE(PROPER(C251),"_",""),2,100) (驼峰) =LOW ...
- Tomcat && Servlet(1)
一.概述 为了让web服务器和web应用程序进行访问交互,servlet是这个交互的标准接口,web服务器必须符合servlet标准,web应用应该实现servlet接口. tomcat是一个符合se ...