vi
编辑器常用命令
一般模式
|
光标移动
|
Ctrl + f
|
屏幕向前翻动一页
|
Ctrl + b
|
屏幕向后翻动一页
|
n<space>
|
按下数字键后再按空格键,光标向右移动这一行的n个字符
|
0 (数字零)
|
移动到本行的第一个字符处
|
$
|
移动到这一行的最后一个字符处
|
G
|
光标移动到文件的最后一行
|
nG
|
光标移动到文件的第n行
|
n<Enter>
|
光标向下移动n行
|
一般模式
|
查找替换
|
/word
|
在光标之后查找一个名为word的字符串
|
?word
|
在光标之前查找一个名为word的字符串
|
:n1,n2s/word1/word2/g
|
在第n1与第n2行之间查找word1,并将其替换为word2
|
:1,$s/word1/word2/g
|
在第1行与最后一行之间查找word1,并将其替换为word2
|
:1,$s/word1/word2/gc
|
在第1行与最后一行之间查找word1,并将其替换为word2,在替换前要求用户确认
|
一般模式
|
复制粘贴
|
x, X
|
x向后删除一个字符,X向前删除一个字符
|
nx
|
向后删除n个字符
|
dd
|
删除光标所在行
|
ndd
|
删除光标所在行向下n行
|
yy
|
复制光标所在行
|
nyy
|
复制光标所在行向下n行
|
p,P
|
p:将复制的数据粘贴到光标的下一行
P:将复制的数据粘贴到光标的上一行
|
u
|
撤销前一个操作
|
编辑模式
|
|
i, I
|
插入:在光标所在处输入字符,已存在的字符后退
|
a, A
|
添加:在光标所在处的下一个字符开始输入,已存在的字符后退
|
o, O
|
插入新的一行,从光标所在处的下一行行首开始输入字符
|
r, R
|
替换:r会替换光标所指的那一个字符;R会一直替换光标所指的字符,直到按下Esc为止
|
Esc
|
退出编辑模式,回到一般模式
|
命令行模式
|
|
:w
|
将编辑的数据写入硬盘文件中
|
:w!
|
若文件为只读,将编辑的数据写入硬盘文件中
|
:w [filename]
|
将编辑的数据保存为另一个文件
|
:q
|
推出vi
|
:q!
|
强制退出。不保存文件
|
:r [filename]
|
将filename文件内容加到光标所在行的后面
|
:set nu
|
显示行号
|
:set nonu
|
取消现实行号
|
n1,n2 w[filename]
|
将n1行到n2行的内容保存为filename这个文件
|