1.复制剪切粘贴撤销
复制:
复制一行则:yy
复制三行则:3yy,即从当前光标+下两行。
复制当前光标所在的位置到行尾:y$
复制当前光标所在的位置到行首:y^
剪切:
剪切一行:dd
前切三行:3dd,即从当前行+下两行被剪切了。
剪切当前行光标所在的位置到行尾:d$
剪切当前行光标所在的位置到行首:d^
粘贴:
用v选中文本之后可以按y进行复制,如果按d就表示剪切,之后按p进行粘贴。
撤销与恢复: 'u'
: 撤销上一个编辑操作 'ctrl + r'
: 恢复,即回退前一个命令
'U'
: 行撤销,撤销所有在前一个编辑行上的操作
2.移动光标指令
移动光标普遍使用的是方向键,考虑兼容问题,vi定义太多的方向指令,下面只是一小小部分(常用的几个):
space: 光标右移一个字符
Backspace: 光标左移一个字符
Enter: 光标下移一行
nG: 光标移至第n行首
n+: 光标下移n行
n-: 光标上移n行
n:光标移动到n行尾
:光标移至第n行尾:光标移至第n行尾:光标移至第n行尾ctrl+u:到文件头
ctrl+d:到文件尾
shift+h:到屏幕第一行,shift+m:到屏幕中间,shift+l:到最后一行
:n 到第n 行
^ 到行首,$ 到行尾 (这两个与正则一样)
3.删除指令
x 删除当前光标下的字符 (4x向后删除4个字符)
dw 删除光标之后的单词剩余部分。
d$ 删除光标之后的该行剩余部分。
dd 删除当前行。
c 功能和d相同,区别在于完成删除操作后进入INSERT MODE
cc 也是删除当前行,然后进入INSERT MODE
4.查找指令
/xx 查找xx
n下一个,N上一个
5.缩进空格
>向右加进空格
<向左缩空格
其中vi默认的是8个空格,我们可以:set shiftwidth=4 将缩进宽度改成4个空格
6.分割窗口
1)、水平窗口分割:
:split(开启另一个窗口察看同一文件)
:split 文件名(开启另一个窗口察看指定文件)
2)、垂直窗口分割:
:vsplit(开启另一个窗口察看同一文件)
:vsplit 文件名(开启另一个窗口察看指定文件)
3)、在窗口之间进行切换:
cntl+w+w:按住cntl键,同时按下两次w键。从一个窗口切换到另一个窗口(一般就会开两个窗口,多了会显得乱,所以记住这一个切换命令觉得就够了?)
4)、增大或减少窗口大小:
cntl+w,+/-:按住cntl键,同时按下w键(这种组合应该是命令的开始标志),然后再按下+(增大窗口)或者-(减少窗口)(这时不按下cntl键)。
5)、关闭当前文件:
1)将光标切换到当前窗口下,然后按照关闭单个窗口的方法关闭窗口。例如:q命令。
2)关闭所有窗口文件:在所有关闭单个窗口的命令中加上all,例如:qall命令。
3)关闭除当前窗口之外的文件。:only。
7.退出
退出输入模式,先按一下[ESC]键(有时要多按两下),然后执行:
:w!
:w ——保存当前文件
:w 文件名 另存为
:wq —— 存盘退出(与指令 :x 功能相同):q —— 直接退出,如已修改会提示是否保存
:q! ——不保存直接退出