平时用「vi」并不多,用的时候总是忘记那些命令,今天狠下心来全部过了一遍,今天在这里把他们记下来,发现「vi」命令虽然非常之多,但是基本上可以按照功能来划分成几大块,看起来各成模块,很是整齐,学下来确实没有违和感。
进入vi
vi filename //打开或新建文件,并将光标置于第一行首
vi +n filename //打开或新建文件,并将光标置于第n行首
vi + filename //打开或新建文件,并将光标置于末行首
vi +/pattern filename: 打开文件,并将光标置于第一个与pattern匹配的串处
移动光标
- 左右(前后)移动
h/l
space/delete
left/right
- 上下移动
j/k
up/down/enter
ctr+p / ctr+n
- 左右移动单词首字母
w/b
- 移动到行首尾
fn+left/ fn+right
( / )
0 / $
- 移动到指定行行首/尾
nG / n$
- 光标上下移动行数
n+ / n-
- 移动到屏幕首行/中间行/末行
H/M/L
屏幕翻滚类命令
Ctrl+u: 向文件首翻半屏
Ctrl+d: 向文件尾翻半屏
Ctrl+f: 向文件尾翻一屏
Ctrl+b: 向文件首翻一屏
插入文本类命令
i: 在光标前
I: 在当前行首
a: 光标后
A: 在当前行尾
o: 在当前行之下新开一行
O: 在当前行之上新开一行
r: 替换当前字符
R: 替换当前字符及其后的字符,直至按ESC键
删除
do: 删至行首
d$: 删至行尾
dd:删除整行
搜索
/pattern: 从光标开始处向文件尾搜索pattern
?pattern: 从光标开始处向文件首搜索pattern
其实『vi』还有一些其他的命令及用法,只是我个人认为不太常用,写上去会让整个事情复杂化,不如只抓住这些常用的东西,我觉得够用了,其他的暂时无视吧。