标签:linux之vim编辑器
vi编辑器:全屏的文本编辑器
vi:visual interface,可视化界面;
S.U.N:Bill Joy,vi,sparc,sunos(solaris);
vim:vi iMproved
vim相对于vi来说有更多的新特性:
1.支持语法高亮/着色的显示
2.支持更多的命令
3.历史记录
vi:模式化文本编译器
模式:
编辑模式(命令模式),默认工作模式;
插入模式(输入模式),文本信息的自由编辑;在左下角有“Insert”标记
ex模式(末行模式),对于编辑器本身某些属性和功能的设定;也可以进行文本的编辑操作
其他辅助模式:
替换模式:输入的信息直接替换光标所在位置的内容
可视化模式:
vi/vim的操作:
一.打开vi/vim的操作界面
1.vi/vim命令
2.vim file:
1)file存在,就直接使用vim编辑器打开此文件,默认是将光标放置于该文件的起始位置,即:第一行的第一个字符;
2)file不存在,就直接以新建文件的方式打开;若执行保存命令,则文件会被写入磁盘;若不保存,则文件会消失
3.vim +# file:
在打开指定文件时,将光标直接定位在文件的第#行的行首;如果给定的数字比文件的行数要大,则光标直接停留在最后一行的行首
4.vim + file:
在打开指定文件时,直接将光标定位在文件的最后一行的行首
5.vim +/PATTERN/:
在打开指定文件时,将光标定位在首次被PATTERN匹配到行的行首
二.关闭vi/vim的操作界面:
ex模式中的操作:
:q 直接关闭vim编辑器,不保存修改内容
:q!直接关闭vim编辑器,强制退出但不保存修改的内容
:wq 保存已修改的内容,并关闭vim编辑器
:wq!对于无权更改的文件强制保存,并且在强制保存之后强制关闭vim编辑器
编辑模式中的操作:
ZZ:保存并关闭vim编辑器
ZQ:不保存已经修改的内容,直接关闭vim编辑器
三.在vim编辑模式中,光标的移动方式:
编辑模式中的光标移动操作
1.逐字符移动:
1)Left Arrow或者Right Arrow
2)h:光标向左移动 L:光标向右移动
2.逐字移动:
w:移动光标至下一个字的字首
e:移动光标至当前字或下一个字的字尾
b:移动光标至前一个字的字首
3.行内光标跳转
0:绝对行首
^:相对行首
$:绝对行尾
4.行间跳转:
1)Up Arrow或者Down Arrow
2)j:向下移动一行;k:向上移动一行
3)#G:直接将光标移动至第#行行首;
4)G:直接将光标移动到文档的最后一行
5)gg:直接将光标移动至文档的第一行
ex模式中的光标移动:
:#:直接将光标移动至指定行号“#”的行首
:1:直接将光标移动至文档的第一行行首
:$:直接将光标移动至文档的最后一行行首
四.翻页:
PageDown 或 PageUp可以实现翻页
^+f:向下翻一页 向前翻一页
^+b:向上翻一页 向后翻一页
^+d:向下翻半页
^+u:向上翻半页
五.删除字符:
编辑模式中操作:
1.逐字符删除:
x:删除光标所在位置的字符
X:删除光标所在位置的左侧的一个字符
2.删除光标移动过程中经过的所有内容
d:删除光标移动过程中经过的内容
dd:删除光标所在行
ex模式中的操作:
:d:删除光标所在行;相当于:.d:其中“.”指的是当前行
:#d:删除第#行
:m,nd:删除从第m行开始,到第n行结束中间的所有行
:m,+nd:删除从第m行开始,及其后面n行的内容
:.,+nd:删除从当前光标所在行开始,及其后面n行的内容
:.,$d:删除从当前光标所在行开始,到文档末尾的所有内容;
注意:在vim的操作中,所有的删除操作,同时意味着
六.复制命令
编辑模式中的操作:
y:删除光标移动过程中经过的所有内容
yh,yl,yj,yk,yArrow,yw,ye,yb,yG,ygg,y0,y$,y^
yy:复制当前光标所在行
ex模式中的复制:
:y :复制光标所在行;相当于:.d ;其中"."指的是当前行;
:#y :复制第#行;
:m,ny :复制从第m行开始,到第n行结束中间的所有行;
:m,+ny :复制从第m行开始,及其后面n行的内容;
:.,+ny :复制从当前光标所在行开始,及其后面n行的内容;
:.,$y :复制从当前光标所在行开始,到文档末尾的所有内容;
七.粘贴命令
编辑模式中的操作:
p(Lower):如果是行内的复制或剪切操作,在光标右侧完成粘贴;如果是多行的复制或剪切操作,在光标的下方完成粘贴;
P(Upper):如果是行内的复制或剪切操作,在光标左侧完成粘贴;如果是多行的复制或剪切操作,在光标的上方完成粘贴;
ex模式的操作: “:p”
八.模式切换:
编辑模式(命令模式)被称为vi编辑器的基础工作模式;所有其他模式之间进行切换的中转站
1.编辑模式-->ex模式:
“:”:表示进入ex模式并完成命令的执行
“/”或者“?”:开启ex模式中的匹配查找功能
/默认是自上而下的查找顺序
?默认是自下而上的查找顺序
n和N命令在各个匹配的关键字之间跳转:
n:顺序查找
N:倒叙查找
2.ex模式-->编辑模式
双击ESC键
enter键
Backspace键
3.编辑模式-->输入模式(插入模式)
i,I,a,A,o,O,s,S,C,cc
i:在光标所在位置的左侧开始插入
I:在行首开始插入
a:在光标所在位置的右侧开始插入
A:在行尾开始插入
o:在光标所在行的下方插入一个新行
O:在光标所在行的上方插入一个新行
s:删除光标所在位置的字符,在光标左侧插入
S:删除光标所在行,在行首开始输入
C:删除光标所在位置直到行尾,并且在行位开始输入
cc:相当于S命令
4.输入模式-->编辑模式
ESC键
5.编辑模式-->替换模式
R:进入替换模式
6.替换模式-->编辑模式
ESC键
7.编辑模式-->可视化模式
v:按照字符为单位进行矩形选取
V:按照行为单位进行矩形选取
注意:
1)在选取完成之后,可以使用d命令进行删除也可以使用y命令进行复制
2)只要选取完成,即立刻返回编辑模式
注意:所有的其他模式都只能和编辑模式相互切换:如果两种非编辑模式之间试图切换,则必须经过编辑模式
九.替换命令
r:不进入输入模式而替换光标所在位置的字符
十.撤销命令:
U:撤销当前行内的操作
u:撤销此前的一次编辑操作
^+r:撤销最后一次被撤销的操作
十一.重复之前的一次编辑操作
.
十二.多文档编辑:
1.vim file1 file2 file3...
:next 查看或编辑后一个文档
:prev 查看或编辑前一个文档
:first 查看或编辑第一个文档
:last 查看或编辑最后一个文档
2.vim -o| -O file1 file2 file3...
-o:水平打开多个窗口
^+w,up arrow|down arrow:多个窗口间切换
-O:垂直打开多个窗口
^+w,left arrow|right arrow:多个窗口间切换:
十三.ex模式中的常用命令
1.显示和取消行的编号:
:set number(简写为:set nu)
:set nonumber(简写为:set nonu)
2.开启或关闭字符大小写的敏感度:
:set ignorecase(简写为:set ic)
:set noignorecase(简写为:set noic)
3.开启或关闭自动缩进功能
:set autoindent(简写为:set ai)
:set noautoindent(简写为:set noai)
4.开启或关闭语法着色的功能
:syntax on
:syntax off
5.开启或关闭查找高亮显示
:set hlsearch
:set nohlsearch(简称为:nohl)
6.另存为
:w /path/to/somewhere
:m,nw /path/to/somewhere
7.从其他文件直接读取内容并添加到当前文件中
:r /path/from/somefile
8.与shell交互,调用shell命令
:!COMMAND
本文出自 “小小殊童” 博客,请务必保留此出处http://yigechenlin.blog.51cto.com/13306169/1974391
标签:linux之vim编辑器
原文地址:http://yigechenlin.blog.51cto.com/13306169/1974391