众所周知,vi编辑器在linux中被广泛使用,而vim又是vi当中最好用的一个编辑器,所以,vim编辑器在linux中是必要掌握的重中之重的编辑器。
那么,vim的使用都有什么特点呢,让我们好好了解一下。
vim分为三种模式:
默认模式:又称为编辑模式、命令模式
输入模式
末行模式:在编辑器的左下角
三种模式之间的作用:
默认模式:可以粘贴复制文本,删除按行、字符删除文件,可以跳转光标等
输入模式:可以文本文件、字符串文件、修改文件
末行模式:保存、退出文件,定义窗口属性:如显示文件行号,语法着色等
三种模式之间的转换:
编辑模式 --> 输入模式:
i: insert, 实现在当前光标所在处字符前面转换为输入模式;
a(append 附加): append, 实现在当前光标所在处字符后面转换为输入模式;
o: 实现在当前光标所在行的下方新建一个空白行并转换为输入模式;
I: 在当前光标所在行的行首转为输入模式;
A: 在当前光标所在行的行尾转为输入模式;
O: 在当前光标所在行的上方新建一行,并转为输入模式;
输入模式 --> 编辑模式:
按下Esc键;
编辑模式 --> 末行模式:
键入:
末行模式 --> 编辑模式:
按两下:Esc, Esc
在编辑模式(默认模式)下实现光标跳转:
字符间跳转:
h:左 j:下 k:上 l:右
它们可以和数字结合:5+h:向左跳转5个字符
4+j:向下跳转4个行
3+l:向右跳转3个字符
2+k:向上跳转2个行
行间跳转:#G
1G或者是gg:第一行
G:最后一行
5G:第五行
行内跳转:
^:非空白字符的行首
$:绝对行尾
0:绝对行首
在输入模式下实现光标跳转:
上下左右键
打开文件:
vim [options] /path/to/file,如vim /home/shao aaa.txt
也可以一次打开多个文件:
vim aaa.txt 1.sh grep.txt
在末行模式下输入:
next;下一个文件
first:第一个文件
last:最后一个文件
prev:前一个文件
或者多个文件在同一个平面上面显示:
vim -O[o] abc 1.sh grep.txt ,
-o:表示水平分割
-O:表示垂直分割
ctrl+w,上下左右箭头:表示窗口间切换
如:vim -o 11.sh 12.sh 13.sh
在编辑模式下删除字符:
在光标所在处:
按x:删除一个字符
#x:删除#个字符
dd:删除一行
#dd:删除#行
在末行模式下删除使用d字符:
格式: 起始地址,结束地址
.:表示光标所在地
$:最后一行
%:全文
如:1,7d:从第1行到第7行删除
.,+7d:从光标所在处向下再删7行,总共删了8行
1,$d:从第一行到最后一行都删除
%d :全文删除
.,-7:从光标所在处向上再删7行,总共删了8行
撤销删除或者更改模式:编辑模式下
u:撤销删除的命令一次,最多可以撤销50次,u可逐一操作
U:撤销所有的删除命令
ctrl+r:撤销时又想删除刚撤销的字符,按ctrl+r
文件的复制模式:只能在编辑模式下进行
yy:复制在光标所在处的一行
#yy:复制在光标所在处向下#行
y$;从光标所在处到行尾
y^:从光标所在处到字符行首
y0:从光标所在处到行首
注意:y^表示到字符行首,有空白符不算
y0表示到非字符行首,到光标所在处的第一个字符
文件的粘贴模式:只能在编辑模式下进行
当复制的是整行的时候:
p(小写p):在当前光标所在处字符的下方粘贴
P(大写P);在当前光标所在处字符的前方粘贴
当复制的不是整行时:
p(小写):在当前光标所在处字符的后方粘贴
P(大写):在当前光标所在处字符的前方粘贴
文件翻屏:只能在编辑模式下进行
ctrl +f(forward):向文件尾部翻一屏
ctrl +b(backward): 向文件首部翻一屏
ctrl +d(down):向文件尾部部翻半屏
ctrl +u(up):向文件首部翻半屏
文本搜索功能:只能在末行模式下进行
/keyword 从当前光标所在处向文件尾部查找
?keyword 从当前光标所在处向文件首部查找
如:搜索字符中的“root”字符串
或者
n:下一个关键字查看,跟查找命令相同的方向
N:前一个关键字查看,跟查找命令相反的方向
同一文档窗口分割:
Ctrl+w,s :水平分割
Ctrl+w,v;垂直分割
Ctrl+w,箭头:窗口转化
如:要求多个窗口打开一个11.sh文档
窗口属性定义:在末行模式下进行
显示行号;
set number:显示行号--set nu(命令缩写)
set nonumber:不显示行号--setnonu(命令缩写)
如:显示行号
显示匹配的括号:
set showmatch,set sm(缩写)
set nosm(缩写)
语法着色:
sytax on
sytax off
当然,提示一下,窗口属性定义只能在当前的vim中使用,如果退出vim之后,再重新登录,
就会显示原有的属性。
想要保存窗口属性的更改:
vim的配置文件:
全局:/etc/vimrc 》》全部用户登录都有效
个人:./.vimrc 》》只有在本地用户登录才有效
如:我要保留更改窗口的显示行号
vim /etc/vimrc
好了,vim的使用方法基本上也就这么多了,希望大家多多分享探讨大家总结过的Linux的各种
知识。