vi的模式可分三种:一般模式、编辑模式、命令行模式
----------一般模式:
vi file——>一般模式,该模式下可以使用上下左右按键来移动光标(或h、j、k、l),
也可以删除(整行或单个字符)、替换(单个字符)、复制(行)、粘贴(行)!
r:替换光标所在的字符
u:取消上一步操作,取消到上次保存并退出位置。
x:删除光标所在处后面的字符
X:删除光标所在处后面的字符
dd:删除光标所在处的整行
D:用空白代替光标所在处后面的字符(在本行有效)
ndd:删除当前行到以下n行
dG:删除光标所在行 到末尾的所有内容---------------------------------------------还一个删除的在命令行模式下
yy、Y:复制光标所在行
yG:复制光标所在行 到末尾的所有内容
nyy,nY:复制当前行到以下n行-------------------------------------------------------还有一个复制的 在命令行模式下
p:在光标所在行的下行粘贴
P:在光标所在行的上行粘贴
$:直接移至行尾
n$: 光标移至第n行尾
enter:移至下行行首
G:直接将光标移至最后一行
nG:将光标移至n行
H:将光标移至该屏幕的最上端
M:将光标移至该屏幕的最中间
L:将光标移至该屏幕的最下端
-----------编辑模式:
通过按“a、i、o、A、I、O”一般模式——>命令行模式
a:在光标后添加文本
i:在光标前添加文本
o:在光标下添加新行
s:先删除光标所在处的字符,再进入编辑模式
A:在本行末尾添加文本
I:在本行开始 添加文本
O:在光标上添加新行
S:先删除光标所在的整行,再进入编辑模式
R:从光标所在处开始替换,只要光标所在的位置的字符都可以替换掉,也可在新行编辑;按Esc键结束。
-----------命令行模式:
在一般模式下,按“ :、 / 、?”,光标会移动到该屏的最下行。这个模式就是命令行模式。
该模式下,搜索和替换、删除命令:
1、 ? 和 / 是搜索命令
2、把搜索到的内容替换或删掉:
:%s/old_ /new_ /g----------------替换
: %s/old_ / /g ---------------删除
3、保存、退出
:wq :w :w new _filename (另存为新文件) :q (没有改动文本内容) :q! :x (保存并 退出)
: set nu----设置行号 :set nonu--------------取消行号
:n1,n2y--------------复制 n1到n2行的内容
:n1,n2d--------------删除 n1到n2行的内容