Vi / Vim编辑器—编辑器工作模式、vi编辑操作
推荐一个很好的学习指南:http://www.oschina.net/translate/learn-vim-progressively
Vi / Vim是全屏幕编辑器,正因为这种特性,通常Vi分为三种模式:一般模式、编辑模式、命令行命令模式。
(1) 一般模式Normal Mode(common Mode, c-Mode)
Vi处理文件时,进入该文件就是一般模式,此模式中输入的任何字符皆被视为指令。可以用方向键来移动光标,可以使用“删除字符”或“删除整行”来处理文件内容,也可以使用复制、粘贴处理文件数据
(2) 编辑模式(文本写入模式)Insert Mode (i-Mode)
在一般模式中可以进行删除、复制、粘贴操作,但无法进行编辑,需要按下i, l, o, O, a, A, r, R等才会进入编辑模式,此时进入文本写入模式,而不会被视为命令行。通常在屏幕左下方会出现“INSERT”或“REPLACE”字样,才可以输入任何字符到文件中。返回一般模式按下Esc键即可。
(3) 命令行模式Ed Mode (common-line Mode, e-Mode)
在一般模式中,输入:或/或?就可以将光标移到最下面一行,在这个模式中,可以搜索数据并读取、存盘、大量删除字符、离开Vi、显示行号等操作都是在此模式中实现的。
二、vi操作
step1: 使用vi进入一般模式
denny@ubuntu:~$ Vi test.txt
step2: 按i进入编辑模式,开始编辑文字
注:i:从当前光标所在处插入 I:在当前光标所在行第一个非空格字符处插入
a: 从当前光标所在的下一个字符处插入 A:从光标所在行的最后一个字符插入
o:在当前光标所在下一行处插入新行 O:从当前光标上一行插入新行
r:替换当前光标所指的一个字符 R:一直替换光标所在的文字,直到按Esc退出
step3: 按Esc键回到一般模式
step4: 在一般模式中输入:wq保存后退出Vi
实例1:=>进入编辑模式:输入i或a进入,按Esc退回到一般模式
输入vim test.c(在编辑模式下)
输入#include<stdio.h>
voidmain() { printf(“HelloWorld”); }
再按Esc退出,回到一般模式的vim,输入:wq保存,回车。
回车后输入gcctest.c编译,再输入/a.out,执行,输出Helloworld
实例2:shell