Vim是一个功能强大的全屏幕文本编辑器,是Linux/UNIX上最大的文本编辑器,它的作用是建立、编辑、显示文本文件。
Vim没有菜单,只有命令。
命令 | 作用 |
a | 在光标所在字符后插入 |
A | 在光标所在行尾插入 |
i | 在光标所在字符前插入 |
I | 在光标所在行行首插入 |
o | 在光标下插入新行 |
O | 在光标上插入新行 |
命令 | 作用 |
:set nu | 设置行号 |
:set nonu | 取消行号 |
gg | 到第一行 |
G | 到最后一行 |
nG | 到第n行 |
:n | 到第n行 |
$ | 移至行尾 |
0 | 移至行首 |
命令 | 作用 |
x | 删除光标所在处字符 |
nx | 删除光标所在后n个字符 |
dd | 删除光标所在行,ndd删除n行 |
dG | 删除光标所在行到文件行尾内容 |
D | 删除光标所在处到行尾内容 |
:n1,n2d | 删除指定范围的行 |
命令 | 作用 |
yy | 复制当前行 |
nyy | 复制当前行以下n行 |
dd | 剪切当前行 |
ndd | 剪切当前行以下n行 |
p、P | 粘贴在当前光标所在行下或行上 |
命令 | 作用 |
r | 取代光标所在处字符 |
R | 从光标所在处开始替换字符,按Esc结束 |
u | 取消上一步操作 |
命令 | 作用 |
:w | 保存修改 |
:w filename | 另存为指定文件 |
:wq | 保存修改并退出 |
ZZ | 快捷键,保存修改并退出 |
:q! | 不保存修改退出 |
:wq! | 保存修改并退出(文件所有者及root可使用) |
1.文本编译器 ASCII文件
vi的模式
编辑模式:键盘操作被解析为编辑命令
插入模式:文字输入
末行模式:vi的内置的命令接口,执行vi内置命令
2.编辑模式--》插入模式
i:在当前光标的所在处插入、
I:在当前光标的所在行首插入
a:在当前光标所在处的后面插入
A:在当前光标所在行的行尾插入
o:在光标所在行(新增)的下一行插入
O:在当前光标所在行(新增)的上一行插入
插入模式--》编辑模式
按[ESC]
编辑模式--》末行模式
:
末行模式--》编辑模式
ESC ESC
:q! 不保存退出
:wq 保存退出
:x 保存并退出
编辑模式 ZZ 保存退出
3.打开:可以一次打开多个文件
vi 文件名1 文件名2
在末行模式下输入next切换到下一个文件,输入prev切换到上一个文件,输入first切换到第一个文件,输入last切换;到最后一个文件
分割窗口打开多个文件
-O:水平分割
Ctrl+w,上下箭头
-o:垂直分割
Ctrl+w,左右箭头
vi +num 文件名 光标在第num行
vi + 文件名 光标在末尾行
4.编辑操作(编辑模式下)
.光标移动
单字符移动
H左 L右 J下 K上
可以和数字组合进行多个移动
单词间移动
w:跳至下一个单词的词
首
b:当前或前一个词首
e:当前或下一个词尾
行内移动
0:绝对行首
^:第一个非空白字符
$:绝对行尾
句间移动
(
)
段间移动
{
}
行间移动
num+g
G:最后一行
1G:第一行
x:删除光标所在处的字符
num+x:删除光标所在处开始向后的num个字符
dd:删除光标所在处的一行
num+dd:删除光标所在处向后的num行
r:替换光标所在处的字符
yw:复制光标所在处到行尾的字符
num+yw:复制num个字
yy:复制光标所在行
num+yy:复制num行
p:粘贴
5.末行模式:范围定界
设置行号:set nu
取消行号:set nonu
跳转至某一行:num
查找:/查找单词
?查找字符
替换字符
s/a/b 将光标所在行的第一个a替换成b
s/a/b/g 将光标所在行的所有a替换成b
start,end:例:1,10
.:表示当前行
$:最后一行
c:替换
1)导入命令执行结果:r!命令
2)定义快捷键:map 快捷键 触发命令
例:map ^P I#<ESC>
map ^B 0x
3)连续行注释 :n1,n2s/^/#/g
:n1,n2s/^/#//g
:n1,n2s/^/\/\//g
4)替换
:ab mymail 123456@qq.com