1、概述

  所有的Unix like系统都会内建 vi 文本编辑器,其他的文本编辑器则不一定会存在,但是目前我们使用比较多的是 vim 编辑器。

  vim具有程序编辑的能力,可以主动地以字体颜色辨别语法的正确性,方便程序设计。vim是从vi发展出来的一个文本编辑器。代码补全、编译及错误跳转等方便程序的功能特别丰富,在程序员中被广泛适用。

  简单地来说 vi 是老式的字处理器,不过功能已经很齐全了,但是还是有可以进步的地方。vim 则可以说是程序开发者的意向很好用的工具。连 vim 的官方网站(http://www.vim.org)自己也说 vim 是一个程序开发工具而不是文字处理软件。

2、vim的三种模式

2.1、一般模式

  以 vi 打开一个文档就直接进入一般模式了(这是默认的模式),在这个模式中,你可以使用【上下左右】按键来移动光标,你可以使用【删除字符】或【删除整行】来处理档案内容,也可以使用【复制、粘贴】来处理你的文件数据,

  常用语法:

  1)yy :复制光标当前一行

    数字yy :复制一段(从光标当前一行到第几行)

  2)p :箭头移动到目标行然后粘贴

  3)u :撤销上一步

  4)dd :删除光标所在行

       数字dd :删除(含)光标后多少行

  5)x :删除一个字母,相当于del

    X :删除一个字母,相当于backspace

  6)yw :复制一个词

  7)dw :删除一个词

  8)shift + ^ :移动到行头

  9)shift + $ :移动到行尾

  10)gg:快速移动到第一行

  11)数字 + shift + g :快速移动到第几行

  12)shift + g :快速移动到最后一行

  13)数字N + shift + g :移动到目标行

2.2、编辑模式

  在一般模式中可以进行删除、复制、粘贴等操作,但是却无法编辑文件内容的!要等你按下【i,I,o,O,a,A,r,R】等任何一个字母之后才会进入编辑模式。

  通常在Linux中,按下这些按键时,在画面的左下方会出现INSERT或REPLACE 的字样,此时才可以进行编辑,而如果要回到一般模式时,则必须要按下【ESC】这个按键即可退出编辑模式。

  常用语法:

  1)进入编辑模式

    (1)i  在当前光标前插入

    (2)a  在当前光标后追加

    (3)o  在光标当前行的下一行插入

  2)退出编辑模式

    按【ESC】键

2.3、指令模式

  在一般模式当中,输入【:,/,?】3个中的任何一个按钮,就可以将光标移动到最底下那一行。

  在这个模式当中,可以提供你搜索的动作,读取、存盘、大量取代字符、离开vi、显示行号等。

  常用语法:

  1):选项

    (1):w  保存

    (2):q  退出

    (3):!  感叹号强制执行

    (4):set nu  显示行号

  2)/  查找,/被查找词,n是查找下一个,shift+n是往上查找

  3)?  查找,?被查找词,n是查找上一个,shift+n是往下查找

  如::wq!  强制保存并退出

Linux之vi/vim编辑器的更多相关文章

  1. 【转】Linux上vi(vim)编辑器使用教程

    Linux上vi(vim)编辑器使用教程 ------------------------------------------------------------ ikong ------------ ...

  2. Linux系统Vi/Vim编辑器的简单介绍、安装/卸载、常用命令

    Linux系统Vi/Vim编辑器的简单介绍.安装/卸载.常用命令 1.介绍 vi(Visual Interface)编辑器是Linux和Unix上最基本的文本编辑器,工作在字符模式下.由于不需要图形界 ...

  3. Linux随笔 - vi/vim 编辑器显示行号

    显示行号 1. 打开vi 编辑器 2. 输入  :set number 3. 回车 关闭行号显示 1. 打开vi 编辑器 2. 输入  :set nonumber 3. 回车 行号在每次打开 vi/v ...

  4. Linux上vi(vim)编辑器使用教程

    vi(vim)是上Linux非常常用的编辑器,很多Linux发行版都默认安装了vi(vim).vi(vim)命令繁多但是如果使用灵活之后将会大大提高效率.vi是“visual interface”的缩 ...

  5. 新手指南:Linux上vi(vim)编辑器使用教程

    vi(vim)是上Linux非常常用的编辑器,很多Linux发行版都默认安装了vi(vim).vi(vim)命令繁多但是如果使用灵活之后将会大大提高效率.vi是“visual interface”的缩 ...

  6. Linux系统 vi/vim文本编辑器

    Linux系统 vi/vim文本编辑器 (一)Vim/Vi简介 (二)Vim/Vi工作模式 (三)Vim/Vi基本使用 (四)Vim/Vi应用技巧 (一)Vim/Vi简介 Vim/Vi是一个功能强大的 ...

  7. linux vi/vim 编辑器学习总结

    linux vi/vim 编辑器学习总结 很多时候我们开发人员不可避免的会涉及到项目部署,这个时候使用的就不是我们所熟知的 Windows 和 Mac OS 操作系统了,而是类 Unix 系统.项目部 ...

  8. 【Linux学习】Vi / Vim编辑器—编辑器工作模式、vi编辑操作

    Vi / Vim编辑器-编辑器工作模式.vi编辑操作 推荐一个很好的学习指南:http://www.oschina.net/translate/learn-vim-progressively 一.编辑 ...

  9. vi/vim编辑器的基本操作

    vi/vim编辑器的基本操作 Contents 1. 工具准备(下载gvim) 2. vi/vim基本入门 2.1. 安装 2.2. 基本使用 3. vi/vim基本命令表 1 工具准备(下载gvim ...

随机推荐

  1. 有多个正整数存放在数组中,编写一个函数要求偶数在左边由小到大顺序放置,奇数在右边,也是由小到大顺序放置,Java实现

    思路: * 1.首先分左右 * 2.分好再排序(左边和右边都单独排序) 第一步:分左右 可得注意了: 大体思路最先是从两头出发分成4种情况讨论(左or右,奇数or偶数)循环处理,出口是双层的嵌套循环( ...

  2. python re(正则表达式模块)学习

    一.简介 正则表达式本身是一种小型的.高度专业化的编程语言,而在python中,通过内嵌集成re模块,程序媛们可以直接调用来实现正则匹配.正则表达式模式被编译成一系列的字节码,然后由用C编写的匹配引擎 ...

  3. day15 十五、模块、from导入、起别名

    一.模块的概念 1.什么是模块:一系列功能的集合体 2.定义模块:创建一个py文件就是一个模块,该py文件名就是模块名 模块的四种存在方式 使用python编写的.py文件 包:一堆py文件的集合体 ...

  4. 基于 ASP.NET Core 2.1 的 Razor Class Library 实现自定义错误页面的公用类库

    注意:文中使用的是 razor pages ,建议使用 razor views ,使用 razor pages 有一个小坑,razor pages 会用到 {page} 路由参数,如果应用中也用到了这 ...

  5. Kruskal和prime算法的类实现,图的遍历BFS算法。

    一.图的遍历 #include<iostream> #include<queue> #include<vector> using namespace std; in ...

  6. 20165311 ch02 课下作业

    补充完成课上测试(不能只有截图,要有分析,问题解决过程,新学到的知识点) 完成教材 p97 2.96 2.97,要有完备的

  7. Python 学习笔记1 安装和IDE

    前面的话 现在随着互联网的快速发展,对测试人员的代码要求也越来越高.有种逐步往全栈开发人员发展的趋势. 越来越多的手工测试被自动化取代. 对于测试人员,学习一门开发语言迫在眉睫. C#, JAVA, ...

  8. Java ee第七周作业

    一.什么是JSON?JSON是一种取代XML的数据结构,和xml相比,它更小巧但描述能力却不差,由于它的小巧所以网络传输数据将减少更多流量从而加快速度. JSON就是一串字符串 只不过元素会使用特定的 ...

  9. intellij idea 的全局搜索快捷键方法

    1.Ctrl+N按名字搜索类 相当于eclipse的ctrl+shift+R,输入类名可以定位到这个类文件,就像idea在其它的搜索部分的表现一样,搜索类名也能对你所要搜索的内容多个部分进行匹配,而且 ...

  10. luogu3830 [SHOI2012]随机树

    传送门:洛谷 题目大意:对于一个只有一个节点的二叉树,一次操作随机将这棵树的叶节点的下方增加两个节点.$n-1$次操作后变为$n$个叶节点的二叉树.求:(1)叶节点平均深度的期望值(2)树深度的数学期 ...