最小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操作指南的更多相关文章

  1. Vim操作指南

    vim具有6种基本模式和5种派生模式. 基本模式 普通模式 插入模式 可视模式 选择模式 命令行模式 Ex模式 派生模式 操作符等待模式 插入普通模式 插入可视模式 插入选择模式 替换模式 1.移动光 ...

  2. 我的_vimrc文件

    """"""""""""""""&quo ...

  3. vim可视化&Linux系统安全最小化原则& su & sudo

    一.vim在可视化模式下编辑 crl+v,会变成-- VISUAL BLOCK --,然后用上下左右键去选中. 多行注释: ESC进入命令行模式; Ctrl+v进入VISUAL BLOCK模式 上下左 ...

  4. vim实用操作指南

    一.查看文件编码 :set fileencoding :set fileencoding=utf-8 通过该命令可直接将文件修改为UTF-8编码 强制以指定编码打开,vim中 :e ++enc=utf ...

  5. 虚拟机 ----最小安装无法使用vim编辑器

    解决办法:安装 yum -y install vim-enhanced.x86_64 帮助网址http://blog.csdn.net/yexudengzhidao/article/details/7 ...

  6. 玩转Vim 编辑器

    一:VIM快速入门 1.vim模式介绍 以下介绍内容来自维基百科Vim 从vi演生出来的Vim具有多种模式,这种独特的设计容易使初学者产生混淆.几乎所有的编辑器都会有插入和执行命令两种模式,并且大多数 ...

  7. 再谈vim中多窗口的编辑

    参考:http://blog.csdn.net/shuangde800/article/details/11430659 很好 鼠标在各个窗口间循环移动: ctrl+w+(小写的 hjkl), &qu ...

  8. centos7 最小化安装没有ifconfig及修改网卡名enoxxx为ethX

    问题: 1.最小化安装centos7后发现无ifconfig命令 想通过ifconfig查看ip地址发现ifconfig命令不存在,可通过命令 #ip addr       //查看ip 或者 解决: ...

  9. centos7最小安装后常常需要添加的命令

    本人下载的最小镜像文件下载地址:http://pan.baidu.com/s/1kUD2jbT 原文地址:http://blog.csdn.net/nmgrd/article/details/5176 ...

随机推荐

  1. R语言-数据类型与运算符

    一.在线安装包 install.packages(package_name) 二.查看变量 ls() 三.删除变量 rm() 四.变量类型 元数据类型:字符,整形,数字,虚数,BOOL 向量:vec= ...

  2. jmeter 查看提取的参数

    需求:查看“传入的参数”或者“正则表达提取的参数”等...... 解决:添加Debug Sampler组件,不需要配置,直接使用默认 1.使用CSV Data Set Config组件“传入的参数”直 ...

  3. I.MX6 support eMMC 5.0

    /***************************************************************************** * I.MX6 support eMMC ...

  4. linux中磁盘分区以及如何将磁盘挂载到系统中

    fdisk 分区 fdisk /dev/sdb -p查看当前分区-t 改分区号-w将分区表写进磁盘-n创建分区 -p主分区 -e拓展分区 partprobe 让内核更新分区信息cat /proc/pa ...

  5. Python基本特殊方法之__new__

    __new__()和不可变对象 __new__方法的一个用途是初始化不可变对象,__new()__方法中允许创建未初始化的对象,这允许我们在__init__()方法被调用之前先设置对象的属性 例:为f ...

  6. python的正则re模块

    一. python的正则 python的正则模块re,是其内置模块,可以直接导入,即import re.python的正则和其他应用的正则及其相似,有其他基础的话,学起来还是比较简单的. 二. 正则前 ...

  7. mybatis排序

    排序的时候#和$的分别 1. #将传入的数据都当成一个字符串,会对自动传入的数据加一个双引号.如:order by #user_id#,如果传入的值是111,那么解析成sql时的值为order by ...

  8. hdu 5730 Shell Necklace——多项式求逆+拆系数FFT

    题目:http://acm.hdu.edu.cn/showproblem.php?pid=5730 可以用分治FFT.但自己只写了多项式求逆. 和COGS2259几乎很像.设A(x),指数是长度,系数 ...

  9. Java基础数据类型二进制转换

    前言: 本文主要介绍java基础类型的二进制转换和二进制的基本概念. 二进制: 1,二进制是以0和1为码,逢2进1,比如3=11=1*2+1. 2,在计算机当中其它进制的算法基本基于2进制,因为计算机 ...

  10. 解决Maven提示:Could not read settings.xml, assuming default values

    本文转载自:http://blog.csdn.net/hqocshheqing/article/details/47702049 最近在学习Maven  时总是出现 Could not read se ...