VI编辑器可以分为3种状态,它们分别是命令模式、输入模式以及末行模式,VI运行后默认进入命令模式。

命令模式:控制屏幕光标的移动,字符、单词或行的删除、替换,复制粘贴数据以及由此进入插入模式和末行模式。

输入模式:在命令模式下,用户输入的字符都会被VI当作命令解释执行。如果用户把输入的字符当作文本内容,则必须要先进入输入模式。在命令模式下按下 a,i,o键,即可进入输入模式。在输入模式下按下Esc键可返回命令模式。

末行模式:在命令模式下,按下“:”键即可进入末行模式,此时VI会在显示窗口的最后一行显示一个":"提示符,用户可在此输入命令。在该文件下可以保存文件,退出VI,也可以查找并替换字符、列出行号、跳到指定行号的行等。命令完成后会自动返回命令模式,可可以手动按下Esc键返回。

进入输入模式几种方式

i:在当前光标所在处前插入文本。

I:将光标移动到当前行的行首,并在行首前插入文本。

a:在当前光标所在处之后插入文本。

A:将光标移动到当前行的末行,并在末行之后插入文本。

o:在光标所在行的下面新插入一行,并将光标移动到新行的行首插入文本。

O:在光标所在行的上面新插入一行,并将光标移动到新行的行首插入文本。

命令行模式下

0或^:移动光标到当前行的行首。

$:移动光标到当前行的行末。

dd:删除光标所在行。

do:删至行首

d$:删至行尾

u 撤消最后一次修改

U 撤消当前行的所有修改

. 重复最后一次修改

搜索字符串使用/或?,/表示向下搜索,?表示向下搜索

例如从开始位置向下搜索"bind-address",可以使用/bind-address 然后按Enter键,n键是查找下一个,N查找上一个,如果搜索的内容包含特殊字符可以使用转移符号"\"

替换字符串

:s/str1/str2/  #用字符串str2换行中首次出现的字符串str1

:s/str1/str2/g #用字符串str2替换行中所有出现的字符串str1

:.,$ s/str1/str2/g 用字符串 str2 替换正文当前行到末尾所有出现的字符串 str1

:1,$ s/str1/str2/g 用字符串 str2 替换正文中所有出现的字符串 str1

:g/str1/s//str2/g 功能同上从上述替换命令,可以看到:g 放在命令末尾,表示对搜索字符串的每次出现进行替换;不加 g,表示只对搜索字符串的首次出现进行替换;g 放在命令开头,表示对正文中所有包含搜索字符串的行进行替换操作。

复制当前行使用yy

粘贴已复制的行p

末行模式命令

命令行模式输入":"进入末行模式

w  保存当前文件。

w!  强制保存。

q  退出vi。

q!  不保存文件退出vi。

n  移动光标到第n行,n为行号。

ctrl + g 可以知道cursor的那一行的行数

shift+g可以到最后一行

末行模式输入:set nu回车可显示行号

末行模式下直接输入行号后回车可将光标定位到指定行

ssh 进入终端(terminal)后

Ctrl+e 将光标移至末尾

Ctrl+a 将光标移至首位

Ctrl+k 删除此处至末尾所有内容

Ctrl+u  删除此处至开始所有内容

Ctrl-L 清除当前屏幕

Ctrl-C -杀死当前任务

复制为ctrl-shift-c

粘贴为ctrl-shift-v

tab=补全

vi 编辑器常用命令的更多相关文章

  1. VI编辑器常用命令

    Linux下的文本编辑器有很多种,vi 是最常用的,也是各版本Linux的标配.注意,vi 仅仅是一个文本编辑器,可以给字符着色,可以自动补全,但是不像 Windows 下的 word 有排版功能. ...

  2. vi 编辑器常用命令(转)

    常用vi编辑器命令行 对于VI的命令行,不需要特意的去记忆,写下来,让要用到的时候能找到就行 游标控制 h 游标向左移 j 游标向下移 k 游标向上移 l (or spacebar) 游标向右移 w ...

  3. Linux 操作系统下 VI 编辑器常用命令详细介绍

    一.Vi 简介 vi是unix世界中最通用的全屏编辑器,linux中是用的是vi的加强版vim,vim同vi完全兼容,vi就是"visual interface"的缩写.它可以执行 ...

  4. Linux vi 编辑器 常用命令行

    1.vi 模式   a) 一般模式: vi 处理文件时,一进入该文件,就是一般模式了.   b) 编辑模式:在一般模式下可以进行删除,复制,粘贴等操作,却无法进行编辑操作.等按下'i,I,o,O,a, ...

  5. linux下vi编辑器常用命令

    最近折腾云主机centOS,不得不接触到各种命令,特别是vi编辑器. 时常悔恨当时没好好听金老伯的linux课,导致现在操作命令用的十分生疏,甚至跳转行首行尾都要查一查才知道. 所以〒▽〒有了下面这篇 ...

  6. Linux环境下vi/vim编辑器常用命令

    使用vi文本编辑器 配置文件是Linux系统中的显著特征之一,其作用有点类似于Windows系统中的注册表,只不过注册表是集中管理,而配置文件采用了分散的自由管理方式.那么如何使用Linux字符操作界 ...

  7. linux vi编辑常用命令

      linux vi编辑常用命令 来源:互联网 作者:佚名 时间:07-10 21:31:14 [大 中 小] linux vi编辑常用命令,需要的朋友可以参考下   vi编辑器中有三种状态模式 1. ...

  8. vi编辑器常见命令的使用

    Linux下的文本编辑器有很多种,vi 是最常用的,也是各版本Linux的标配.注意,vi 仅仅是一个文本编辑器,可以给字符着色,可以自动补全,但是不像 Windows 下的 word 有排版功能. ...

  9. Linux vi 编辑器常见命令的使用

    Linux vi 编辑器常见命令的使用 Linux下的文本编辑器有很多种,vi 是最常用的,也是各版本Linux的标配.注意,vi 仅仅是一个文本编辑器,可以给字符着色,可以自动补全,但是不像 Win ...

随机推荐

  1. 理解C#中的闭包

    闭包的概念 内层的函数可以引用包含在它外层的函数的变量,即使外层函数的执行已经终止.但该变量提供的值并非变量创建时的值,而是在父函数范围内的最终值. 闭包的优点 使用闭包,我们可以轻松的访问外层函数定 ...

  2. PIGOSS

    http://blog.sina.com.cn/s/blog_865bc4c60102wkb1.html

  3. Hibernate日常应用的相关问题

    1.在控制台中显示Hibernate打印的SQL中的参数 默认情况下,hibernate的sql中都是以问号代表参数,并没有显示参数的真实值,但是也不是做不到,只需要两步配置就可以显示出参数的真实值了 ...

  4. IE下AjaxForm上传文件直接提示下载的兼容性Bug

    使用AjaxForm上传文件时候,在IE下直接提示下载保存: 我的示例代码: return this.Json( new { prop1 = 5, prop2 = 10 }); 这种问题只出现在IE下 ...

  5. poj 2594 传递闭包+最大路径覆盖

    由于路径可以有重复的点,所以需要将间接相连的点连接 #include<stdio.h> #include<string.h> #include<algorithm> ...

  6. LoadRunner字符串与参数的操作及转换技巧

    刚开始学LR时,经常搞不清楚变量和参数的区别与用法,最近在一次脚本编写中,整理出来的一些小技巧,与大家一起分享. //字符串复制 strcpy(str,"Hello ") ; // ...

  7. hdu 1290

    http://www.cnblogs.com/songacm/p/3537419.html 引用自这篇博客,真·大神

  8. ClassPathXmlApplicationContext的启动

    Spring将ApplicationContext启动的全过程,refresh函数中包含了几乎ApplicationContext中提供的全部功能,而且此函数中逻辑非常清晰明了,很容易分析对应的层次及 ...

  9. node连接--MySQL

    MySQL驱动器:node-mysql; MySQL对象关系映射器:node-sequelize; 例子: package.json: { "name": "shoppi ...

  10. 如何把car中的模块导入adams/view中

    在你的adams安装目录下的acar文件夹下找到acar.cfg文件,将里面的 MDI_ACAR_PLUS_AVIEW 后面的no改成yes,在car中的tool下面就可以找到进入view环境的命令了 ...