1.打开文件并定位到指定行数
vi 文件名 +行数 (如不写行数只写+号则定位到文件末尾)
2.vi的三种工作模式
2.1命令模式:
打开文件首先进入的模式
通过命令对文件进行常规的操作,例如:定位、翻页、复制、粘贴、删除等
2.2 末行模式
退出和保存操作使用时的模式。输入冒号进入末行模式。
2.3 编辑模式
正常编辑模式
3.末行模式的命令
:set nu 显示行数
4.命令模式下的命令
4.1移动命令
4.2 行内移动
4.3 移动到行
其中“:数字”方法是在末行模式使用的方法
4.4 屏幕移动
4.5 切换段落
如图,把两个空白行之间部分称为一个段落,要在段落间快速切换,需要使用
{ :上一个段落
} :下一个段落
来切换
4.6 切换括号(包括()、[]、{})
使用百分号来在一对括号间来回切换
5.标记行
使用标记行可以让光标快速回到被标记的行。
标记:m跟上一个字母(仅一个),如mx
回到标记:单引号跟上标记的字母,如'x
6.选中文本(进入可视模式)
在可视模式下,可以配合前面说的移动命令使用,如在可视模式下使用G快速选中从光标到文末的内容。
7.撤销和恢复撤销
可以一直撤销到刚打开文件时的状态
8.剪切(删除的内容会放在缓冲区,可粘贴)
d命令的使用方法:先按下d,在使用移动命令,删除开始位置和移动结束位置之间的内容。如:按下d,按下w向后跳跃一个单词,则会将这个单词删除。
ndd:n表示数字,比如:8dd删除8行
9.复制粘贴
注:nyy 命令:在 yy 前可加一个数字 n,表示复制当前行及其后 n-1 行的内容,例如:复制此行和以下2行的内容,输入3yy。
10.终端外的内容粘贴进终端
在终端外复制了内容,在终端内需要使用鼠标右键来粘贴。
同样可以使用鼠标右键来进行复制操作。
11.替换
r:替换当前光标下的内容,如光标选中多个字符,则全部替换为输入的一个字符。
R:替换从当前光标往后的字符,使用esc退出替换
12.缩进(缩排)和重复执行
一次缩进为四个空格。
13.查找命令
使用“/”来查找,如查找hello,输入/hello,回车
n:下一个
N:上一个
快速匹配:快速匹配当前光标所在的单词
*:下一个
#:上一个
14.全局替换
文末模式下:
%s/旧文本/新文本/g
15.可视范围内替换
进入可视模式选中需要替换的范围,使用命令
s/旧文本/新文本/g (注意!没有%)