VI 一直在接触,读书学的一点东西早忘光了,只会几个基本的命令,操作起来很是蛋疼。特地整理了一下平时自己常用到的
VI 有2个模式.我自己定义的
1. 命令模式,一开始进去的模式。一些指定的键盘输入会产生不同的效果
2. 输入模式,在命令模式下输入冒号(:) 就可以进入输入模式。按Esc键即可退出命令模式。
命令模式
用键盘的一些制定的键可以完成一些操作(经常用到的),如下:
i,I (顾名思义:insert插入)。小写i表示在光标所在字符的前面插入,小写I表示在光标所在行的最开头处插入。
a,A (顾名思义:append 接在后面,或者叫after在之后)。小写a表示在光标所在字符的后面插入,大写A表示在光标所在行的最末尾处插入。
o,O (换行插入),这个特殊一点,大写O表示在光标所在行的前面一行换行插入,小写o表示在光标所在行的后面一行换行插入。
r,R(顾名思义:替换插入,replace ),小写r表示只替换当前光标选择的一个字符,只替换一次。大写R会一直往后替换,只要不停止键盘输入。
h,j,k,l 左,下,上,右 移动光标
u 还原修改,多次按,恢复到最原始未保存状态。
[Ctrl]+r 重做上一个动作
0(零),$ 光标跳到一行(记住是一行,不是整个文件)的开头和末尾。
g,G 光标跳到整个文件的开始和末尾。
1G,2G,3G,分别跳到第1行,2行,3行
{ 和} 表示光标跳到一个块、或者一个段落的开头和结尾。
x(小写)删除光标所在字符,多次按,连续删除
r 替换光标所在的字符。一次只能替换一个。
D:相当于键盘还上的退格删除键。依次往前删除字符。只能删除本行的数据。注意:如果光标本来位于一行的开始,则是删除这一行数据。
dd:删除光标所在的一行。
ndd:n为数字。删除光标所在的向下 n 列,例如 20dd 则是删除 20 列
d1G:删除光标所在到第一行的所有数据
dG:删除光标所在到最后一行的所有数据
d$:删除游标所在处,到该行的最后一个字符
d0:那个是数字的0,删除游标所在处,到该行的最前面一个字符
y:复制。y0 复制到光标所在行的开始的数据,y$复制光标所在行的末尾的数据,yg 复制光标所在行到当前文件最开始的数据,yG复制光标所在行到当前文件最后一行的数据。
yy:复制游标所在的那一行
nyy:n为数字。复制光标所在的向下 n 列,例如 20yy 则是复制20列
p:粘贴刚才复制的内测(删除的也行)
ZZ: 快速保存并退出,这是大写的 Z 喔!若档案没有更动,则不储存离开,若档案已经被更动过,则储存后离开!
v,V:选择,小写v,选择一个字符,然后操作移动键盘→,就可以逐步选择一行数据。大写V,选定一行,操作键盘↓。就可以选择多行。
[Ctrl]+v区块选择,可以用长方形的方式选择资料。y:复制选择的。d:删除选择的。
输入模式
按冒号(:)进入,是对刚才通过命令模式的操作保存、设置等操作,常用的:
: w ,保存当前文件,
: w filename 另存在文件
: q ,退出
: wq! 强行保存并退出
: set nu 设置行号
: set nonu 取消行号
: /string 查找。b/B 往上找,往下找。