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. Android数据存储之sharedpreferences与Content Provider

    android中对数据操作包含有: file, sqlite3, Preferences, ContectResolver与ContentProvider前三种数据操作方式都只是针对本应用内数据,程序 ...

  2. 【转】如何在 Eclipse 中進行 TFS 的版本管控

    转自:http://www.dotblogs.com.tw/franma/archive/2010/05/04/15009.aspx 和上一篇一樣!所使用的版本也是 3.4 的 之前有被問到 Team ...

  3. MVC学习笔记---MVC导出excel(数据量大,非常耗时的,异步导出)

    要在ASP.NET MVC站点上做excel导出功能,但是要导出的excel文件比较大,有几十M,所以导出比较费时,为了不影响对界面的其它操作,我就采用异步的方式,后台开辟一个线程将excel导出到指 ...

  4. 设计模式学习之简单工厂(Simple Factory,创建型模式)(1)

    简单工厂(Simple Factory,创建型模式) 第一步: 比如我们要采集苹果和香蕉,那么我们需要创建一个Apple类和Banana类,里面各自有采集方法get(),然后通过main方法进行调用, ...

  5. Ninja - chromium核心构建工具

    转自:http://guiquanz.me/2014/07/28/a_intro_to_Ninja/ Ninja - chromium核心构建工具Jul 28, 2014 [在线编辑] 缘由 经过上次 ...

  6. SQL Server 2005 中实现通用的异步触发器架构

    在SQL Server 2005中,通过新增的Service Broker可以实现异步触发器的处理功能.本文提供一种使用Service Broker实现的通用异步触发器方法. 在本方法中,通过Serv ...

  7. git学习 远程仓库02

    使用远程仓库: 查看当前远程库://克隆后,至少有一个名为 origin 的远程库,Git 默认使用这个名字来标识你所克隆的原始仓库 git remote -v: 并显示所有远程库的地址: 添加远程仓 ...

  8. js:数据结构笔记1---数组

    JS中数组: 只是一种特殊的对象,比其他语言中效率低: 属性是用来表示偏移量的索引:在JS中,数字索引在内部被转化为字符串类型(这也是为什么写对象属性的时候可以不叫引号),因为对象中的属性必须是字符串 ...

  9. Xamarin Android长度单位区别

    Xamarin Android长度单位区别 Android中长度单位有6种:px.in.mm.pt.dp/dip.sp.其中,px表示显示设备的一个像素:in表示显示设备的1英寸:mm表示显示设备的1 ...

  10. Comon.Logging与Log4net联合使用

    1.摘要 Common.Logging定义了一种接口的公共接口,尤其在Quartz.net中作为接口型的组件,而具体则使用log4net,nlog等组件. 2.使用步骤 Install-Package ...