VIM的使用

VI是Linux系统中的一种编辑器,它的使用方法和界面与Unix平台十分相似,掌握了VIM的特殊,你可以感觉到它强大的功能与高效。Vim 相对来说较小,无论你使用任何Linux系统,你总是可以使用vi的。很多系统中,可能只有vi 供用户选择使用。系统配置文件的修改多数也用vi编辑器。

进入 vi

在系统提示符下键入vi< 文件名称>,vi可以自动帮你载入所要编辑的文件或是开启一个新的文件。进入vi后屏幕方会出现波浪符号,凡是列首有该符号就代表此列目前是空的。

离开vi

可以在特殊模式下键入

:q退出vi

:q!强制退出vi

:wq先保存再退出vi

命令模式(进入时默认的模式):

任何输入都会作为编辑命令,而不会出现在屏幕上,如输入正确,任何输入都引起立即反应。

命令模式下输入ZZ,直接退出vi,保存文档,返回终端。

输入模式(编辑模式):

任何输入数据都置于编辑寄存器。在命令模式下输入(i,a,A等),可进入输入模式。输入模式下按ESC,可返回到命令模式。

特殊模式(最后行模式):

在命令模式下,以“:”或者“/”为前导指令,出现在屏幕的最下一行,任何输入都被当成特别指令。

进入输入模式

命令

作用

<a>attach

在光标后输入文本

<A>

在当前行末尾输入文本

<i>insert

在光标前输入文本

<I>大写的i

在当前行开始输入文本

<o>

在当前行后输入新的一行

<O>

在当前行后输入新的一行

光标移动命令

命令

作用

<b>begin

移动到当前单词的开始

<e>end

移动到当前单词的结尾

<w>word

向前移动一个单词

<h>

向前移动一个字符

<j>

向上移动一行

<k>

向下移动一行

<l>小写L

向后移动一个字符

删除操作

命令

作用

<x>

删除光标所在的字符

<dw>

删除光标所在的单词

<d$>

删除光标至行尾所有字符

<D>

同d$

<dd>

删除当前行

改变与替换

命令

作用

<c>

替换光标所在的字符

<R>

替换字符序列

<cw>

替换一个单词

<ce>

同<cw>

<cb>

替换光标所在的前一个字符

<c$>

替换光标位置至行尾的所有字符

<C>

同<c$>

<cc>

替换当前行

查询命令

命令

作用

</abc>

向前查询abc

<?abc>

向后查询abc

<n>

向前继续查询

<N>

向后继续查询

拷贝与粘贴命令

命令

作用

</yw>

将光标所在的单词拷入剪贴板

<y$>

将光标至行尾的字符拷入剪贴板

<Y>

同<y$>

<yy>

将当前行拷入剪贴板

<p>

将剪贴板中的内容粘贴在光标后

<P>

将剪贴板中的内容粘贴在光标前

拷贝与粘贴命令

命令

作用

<:q>

将光标所在的单词拷入剪贴板

<:q!>

将光标至行尾的字符拷入剪贴板

<:w>

同<y$>

<:w  filename>

将当前行拷入剪贴板

<:w!  filename>

将剪贴板中的内容粘贴在光标后

<:wq>

将剪贴板中的内容粘贴在光标前

<:x>

同<:wq>

<ZZ>

同<:wq>在默认模式下使用

其他命令

<:set nu>显示行号

<nG> 表示跳到n行

<u>或<:undo>撤销(undo)

<.>表示重做(redo)

<nyy>表示拷贝n行

<:e  filename>创建新文件

<:n  filename>加载新文件

删除:特殊模式下

dd 表示删除光标所在的行;

D 表示删除光标所在位置到行尾的字符;

dw 表示删除光标所在位置的字;

替换:特殊模式下(等于删除原来的字符,插入新的字符)

cc 表示替换光标所在的行;

cw 表示替换光标所在的字;

r 表示替换光标所在位置;

查询:默认模式下

/str表示查找str,从前往后找,查找结束后光标在最前端。

?str表示查找str,从后往前找,查找结束后光标在最后端。

查找结果为多项时,按n从前到后移动选中查找结果;按N从后往前选中查找结果。

拷贝和粘贴:默认模式下

yy表示拷贝光标所在行;

Y表示拷贝光标到行尾的字符;

p表示光标移动到需要粘贴的地方;

nyy表示拷贝n行;a

设置行号:特殊模式下

: set nu 或 :set number;

行跳转:默认模式下

nG 表示跳转到第n行;

在当前文件中,:e表示打开另外一个文件;:n表示新建一个文件。

撤销操作

:undo表示撤销操作;

在Vim 中使用:!后面可以加其他环境的特殊,例如 :! gcc –o sc second.c 或 :!./sc;

VI编辑器学习笔记的更多相关文章

  1. Linux——vim/vi 简单学习笔记

    Vim/Vi是一个功能强大的全屏幕文本编辑器,是Linux/UNIX上最常用的文本编辑器,它的作用是建立.编辑.显示文本文件.Vim/Vi 没有菜单,只有命令. 早前也用过Vim变过C++/C的代码, ...

  2. Vim 编辑器学习笔记

    参考资料: 世界上最牛的编辑器: Vim 1

  3. Unity扩展编辑器学习笔记--从路径下找到拥有某个组件类型的预设

    public static List<T> GetAssetsWithScript<T>(string path) where T:MonoBehaviour { T tmp; ...

  4. Linux学习笔记(四) vi编辑器

    一.vi 编辑器 vi 编辑器 (Visual Interface) 是所有 Unix 及 Linux 系统下标准的编辑器,相当于 Windows 系统中的记事本 它有三种模式,分别是: Comman ...

  5. Linux学习笔记之VI(VIM)编辑器

    百度关于vi的资料 http://baike.baidu.com/view/908054.htm 关于vi 和vim的介绍可以在上面的网址看到. 1   进入和退出vi 进入:在终端命令行输入 vi ...

  6. Linux 学习笔记 2 Centos 安装与网络的配置以及VI编辑器的使用

    前言 当然,还是觉得Centos 在众多的Linux 发行版中,还是很有地位的,好多的服务器大多沿用的都是一代的Centos 因为它开源(这是废话)而且稳定,这才是服务器沿用的最重要的一项指标. 镜像 ...

  7. linux学习笔记--vi与vim编辑器

    vi编辑器全名为Visual Interface,即为可视化接口,类似于Windows中的记事本 vim相当于是vi的一个升级版本,包含vi的一切操作命令,vim相对于vi做了哪些提升: 1.vim支 ...

  8. Linux学习笔记 (三)Vi文本编辑器

    vi编辑器是所有Unix及Linux系统下标准的编辑器,它的强大不逊色于任何最新的文本编辑器,这里只是简单地介绍一下它的用法和一小部分指令.由于对Unix及Linux系统的任何版本,vi编辑器是完全相 ...

  9. deepin linux 学习笔记(二)——文本编辑器

    目录 deepin linux 学习笔记(二)--文本编辑器 前言 nano 小巧的命令行编辑器 通用 编辑 定位 排版 配置 vim 思路独特的超级编辑器 命令模式 插入模式 底线模式(末行模式) ...

随机推荐

  1. JavaWeb(一)

    Web应用程序开发是目前软件开发领域的三大方向之一. 静态网页与动态网页 静态网页 表现形式:网页的内容是固定的,不会更新: 使用的技术:HTML,CSS 动态网页 表现形式:网页中的内容通过程序动态 ...

  2. [51NOD1024] 矩阵中不重复的元素(数学,精度)

    题目链接:http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1024 因为n和m都到100了,所以直接快速幂硬算一定会爆炸,考 ...

  3. STM32的I2C通信

    I2C总线是由NXP(原PHILIPS)公司设计,有十分简洁的物理层定义,其特性如下: 只要求两条总线线路:一条串行数据线SDA,一条串行时钟线SCL: 每个连接到总线的器件都可以通过唯一的地址和一直 ...

  4. scp指令的学习

    http://www.cnblogs.com/hitwtx/archive/2011/11/16/2251254.html scp是linux中功能最强大的文件传输命令,可以实现从本地到远程以及远程到 ...

  5. [C程序设计语言]第二部分

    声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...

  6. SQL 批量删除数据表

    ) while(exists(select * from sysobjects where name like '表名前缀%')) begin select @name=name from sysob ...

  7. 微博传播数量和传播深度的预测--基于pyspark和某个回归算法

    8-28决定参加一下这个千万条的数据处理任务,因为场景和自己做过的一个回归分析预测差不多,第一天开始在小规模的数据上做准备工作. 第二次大修改版本 date 20160829 星期一¶ 原始数据处理, ...

  8. iOS - UIToolbar

    前言 NS_CLASS_AVAILABLE_IOS(2_0) __TVOS_PROHIBITED @interface UIToolbar : UIView <UIBarPositioning& ...

  9. R 语言的优劣势是什么?

    R 语言的优劣势是什么? 2015-05-27 程序员 大数据小分析   R,不仅仅是一种语言 本文原载于<程序员>杂志2010年第8期,因篇幅所限,有所删减,这里刊登的是全文. 工欲善其 ...

  10. Team Formation

    #include <stdio.h> #include <ctype.h> #include <math.h> #include <stack> #in ...