第一次开始学的人刚进入vi不要乱点键盘,vi的三种模式和各种命令很容易弄混。

vi写器是Unix系统最开始的写器。它使用控制台图形模式来模拟文本写窗口,允许查看文件中的行、在文件中移动、插入、写和代替文本。

vi共分为三种模式:命令模式,写模式,末行模式

(1)命令模式

命令模式为vi的初始模式。在普通权限下键入“”$ vi 文件名 “”或 临时root客户下键入 “# vi 文件名”(例:root@XXX-virtualBox:/ect# vi vsftpd.conf),则初始进入vi的命令模式。 写模式下按esc进入命令模式。网络很多写在末行模式按esc可进入命令模式,我的电脑进入末行模式后几乎全部按键都是输入,输入esc展现“^[”而不会退回到命令模式。所以如果有状态和我相同进入末行模式不合适转换模式的,不要乱按回车键(我回车换行后退出不了。。结果按截屏键退到桌面强力退出vi@@)。

命令模式中:

ZZ:退出vi

h或

vi模式下怎么保存退出(linux的vim使用教程) 第1张

j或下键:下移一行

k或上键:上移一行

l或右键:右移一个字符

pageDown(或ctrl+F):下翻一屏

pageUp(或ctrl+B):上翻一屏

G:移动到缓冲区的末尾一行

num G:移动到缓冲区中第num行

gg:移动缓冲区的第一行

x:删除目前光标所在地点的字符

dd:删除目前光标所在行

dw:删除目前光标所在地点的单词

d$:删除目前光标所在地点至行尾的内容

J:删除目前光标所在行行尾的换行符(拼接行)

vi模式下怎么保存退出(linux的vim使用教程) 第2张

u:撤销前一写命令

a:在目前光标后追加资料

A:在目前光标所在行行尾追加资料

r char:用char代替目前光标所在地点的单个字符

R text:用text覆盖目前光标所在地点的资料,直到按下ESC键

很容易误按的一个命令:qq:左边最下角会出现“recording@”这种标识。这是vim的一个厉害的功能。它合适录制一个宏,参考

http://www.netingcn.com/vim-recording-function.html

按q可终止宏录制

(2)写模式

在命令模式中按下【i,I,o,O,a,A,r,R】等字母之后进入写模式。按下上述的字母时,界面的左下方可能会出现【–INSERT–或–插入–】的字样,合适做文字资料输入。各个按键含义如下:

a:在光标后开始插入

A:在行尾开始插入

i:从光标所在地点前面开始插入

I:从光标所在列的第一个非空白字元面前开始插入

o:在光标所在列下新增一列并进入输入模式

O:在光标所在列上方新增一列并进入输入模式

ESC:返回命令模式

(3)末行模式

网络很多说在命令模式中输入【:】会进入末行模式,我的电脑:没有效果。需要在大写模式(按CapsLock键)再按q键最末行会出现:,小心这时不合适再更改回很多的模式(如果合适请留言我改写,谢谢)。可在:后输入命令

:q 如果有未改写缓冲区资料,退出。

:q! 取消全部对缓冲区资料的改写并退出【不保存直接退出】

:w filename 将文件保存到另外一个文件中

:wq将缓冲区资料保存到文件中并退出

:sp上下分屏

:vsp差不多分屏

ctrl+w+w更改屏

一些资料写命令模式中输入【/】进入末行模式,和:的命令不一样,/后可输入查找内容或一些命令。如果/后输入错误的命令会全自动回到命令模式