文章目录
-
- vi
-
- vi的三种模式
- 三种模式的切换
- 常用命令
-
- 1.光标
- 2.查找替换
- 3.删除、复制、粘贴
- 4.进入编辑模式
- 5.保存、退出
vi
vi的三种模式
-
一般命令模式(command mode):
光标的移动,搜索,替换,删除字符,删除整行,复制整行,粘贴整行。
-
编辑模式(insert mode):
插入或替换编辑文件内容。
底下会显示
,INSERT
字样。REPLACE
-
命令行模式(command-line mode):
读取、保存、批量替换等其他额外功能。
三种模式的切换
- 其他模式 -> 一般命令模式:
ESC
- 一般命令模式 -> 编辑模式:
,i/I
,o/O
,a/A(插入)
,r/R(替换)
- 一般命令模式 -> 命令行模式:
,:
,/
?
常用命令
1.光标
移动一个字符:方向键
上下左右
、
ijhk
上下翻页:
Ctrl + f(向下)
,
+ b(向上)
行首:
,
Home
行尾:
$
,
End
文件首行:
gg
文件末行:
G
向下n行:
n <Enter>
2.查找替换
向下查找word:
/word
,(?word 向上)
替换n1与n2行之间的 word1 为 word2:
:n1,n2s/word1/word2/g
替换全文的 word1 为 word2:
:1,$s/word1/word2/g
或
:%s/word1/word2/g
1
最后的
/g
如果改成
/gc
表示替换前需确认
3.删除、复制、粘贴
删除:
x
:相当于del、
X
:相当于backspace
剪切整行:
dd
复制整行:
yy
粘贴:
p
:粘贴到光标下一行,P:粘贴到光标上一行
撤销:
u
重做:
ctrl + r
注意:
ndd,nyy:相当于n次dd,n次yy
d,y后面加1G,G,$,0:分别表示从光标处一直到首行,末行,行尾,行首
例如d1G表示删除当前行到首行,y0表示复制当前字符到行尾
4.进入编辑模式
i :从目前光标所在处输入
I :在目前所在行的第一个非空格符处开始输入
a :从目前光标所在的下一个字符处开始输入』
A :从光标所在行的最后一个字符处开始输入』
o :在目前光标所在的下一行处输入新的一行』
O :在目前光标所在处的上一行输入新的一行
r :只会取代光标所在的那一个字符一次
R:会一直取代光标所在的文字,直到按下 ESC 为止
5.保存、退出
:w :保存
:w! :强制保存
:q :关闭
:q! :强制关闭(不保存)
:wq :保存关闭
:wq! :强制保存关闭
:w [filename] :另存为
:set nu :显示行号
:set nonu :取消显示行号