vim编辑器:是一种文本编辑器
自带教程:执行命令 vimtutor
文本编辑器的种类:
行编辑器:所谓行编辑器是指一行一行来编辑处理的工具,如sed。
全屏编辑器:编辑空间占据整个屏幕,如nano,vi
vim:vi的增强版,vim是模式化的编辑
vim再工作过程当中有三种模式:编辑模式(命令模式)、输入模式、命令模式
vim使用-模式转换
编辑模式:默认模式
编辑模式-->输入模式:
i:Insert,光标所在处输入;
a:append,在光标所在处后方输入;
o:在光标所在出的下方打开一个新行;
I:在光标所在行的行首输入;
A:在光标所在行的行尾输入;
O:在光标所在处的上方打开一个新行;
输入模式-->编辑模式
ESC
编辑模式-->末行模式
:
末行模式-->编辑模式
ESC
关闭文件:
ZZ:保存并退出
:q:退出
:q!:不保存退出
:wq:保存退出
:x:保存退出
:wq!强制保存退出
:w /PATH/TO/SOMEWARE:把对文件做出的修改保存在其他文件中
光标跳转:
字符间跳转
h:左
l:右
j:下
k:上
单词间跳转
w:下一个单词词首
e:当前档次或下一个单词词尾
b:当前单词或前一个单词词首
行首行尾跳转
^:行首第一个非空白字符
0:绝对行首
$:绝对行尾
行间跳转
#G:直接跳转至第#行;
G:最后一行
1G,gg:第一行
句间跳转
)
(
段间跳转
}
{
翻屏跳转:
Ctrl+f:向文件尾部翻一屏
Ctrl+b:向文件首部翻一屏
Ctrl+d:向文件尾部翻半屏
Ctrl+u:向文件首部翻半屏
Enter:按行向后翻
字符编辑:
x:删除光标所在处的字符
#x:删除光标所在处起始的#个字符
vim可视化模式:
v:光标走过的字符
V:光标走过的行
撤销编辑:
u:undo,撤销此前的操作
#u:撤销最近的#次操作
撤销此前的所有操作:
Ctrl+r
重复执行前一个编辑操作:
.
vim末行模式:
内建的命令行接口
(1):
地址定界
:start_pos,[end_pos]
#:特定的第#行,例如5即第5行;
.:当前行;
$:最后一行;
#,#:指定行范围,左侧为起始行,右侧为结束行;
#,+#:指定行范围,左侧为起始行绝对编号,右侧为相对左侧行号的便宜量;例如:3,+7
查找并替换
s:末行模式的命令,使用格式
s/要查找的内容/替换为的内容/修饰符
要查找的内容:可使用正则表达式;
替换为的内容:不能使用正则表达式,但可引用;
如果要查找的内容部分再模式中使用分组符号;再“替换为的内容”中使用后向引用;
直接引用查找模式匹配到的全部文本,要使用&符号;
修饰符:
I:忽略大小写;
g:全局替换,意味着一行中如果匹配到多次,则均替换;
(不加g,只匹配每行第一次匹配到的字符)
可把分隔符换成其他不常用符号 例如:@ @@ @@@ # ## ### 等等,这样当“要查找的内容”或“替换为的内容”中有/的时候 可直接输入不用转义