vim 是vi的升级版
最明显的区别就是vim会显示文件内容变成高亮颜色
vim介绍使用
vim介绍使用

vim显示颜色的条件有很多,同样文件在不同目录会显示不一样的颜色。
安装vim
[root@ygwlinux ~]# yum install -y vim-enhanced
vim分为 一般模式,编辑模式,命令模式
直接vim或者vi进一个文件的时候,我们是在一般模式,是不能修改的,只能上下左右翻动查看
vim在一般模式下按G键快速移动到文本文件的最末行,两下g快速移动到文本文件的最首行
快速定位到30行
30G,想把光标定位到哪就输入行数加G
i键开始插入,就是进入编辑模式
vim +3 文件
打开文件光标从第三行开始
vim介绍使用
在vim里面 先输入:再 输入set nu 显示前面的行数


一般模式:
dd 删除/剪切光标所在的那一行
x或者X x表示向后删除一个字符,X表示向前删除一个字符 前面可以加上想要删除的字节数字。
n+x 向后删除n个字符
ndd (n为number的缩写)删除/剪切光标所在行之后的n行
yy 复制光标所在行
p 从光标所在行开始,向下粘贴已经复制的内容
P 从光标所在行开始,向上粘贴已经复制的内容
u 还原上一步操作
v 按v后移动光标会选中制定字符,然后可以实现复制,粘贴等操作;
ctrl+f 向下翻页
ctrl+b 向上翻页


编辑模式:
i 在当前字符前插入
I 在光标所在行的行首插入
a 在当前字符后插入
A 在光标所在的行尾插入
o 在当前行的下一行插入新的一行
O 在当前行的上一行插入新的一行


命令模式:
/ +查找的内容,向光标之后查找,按n向后继续搜索
? +查找内容,向光标之前查找,按n向前继续搜索
:w 保持文本
:q 退出vim
:wq 保存并退出
:q! 强制退出
:w! 强制保存,在root用户下,即使文本只读也可以完成保存
:set nu 显示行号
:set nonu 不显示行号
:1,$s/etc/abc/g 从第一行到最后一行把所有的etc字符替换成abc
$也可以用其他数字,但是要是在行数范围内。


举例:

删除第37-42行的所有内容 (37G 6dd)
复制第48行的内容并粘贴到第52行下面(48G yy 52G p) p小写
复制第37-42行的内容并粘贴到第44行上面 (37G 6yy 44G P) p大写
把第37-42行的内容移动到第19行下面 (37G 6dd 19G p)


.把输入的指定字符替换为指定的字符

例:在编辑一个文档的时候,我要频繁的输入“abcdefghijklmnopqrstuvwxyz”这样的连续字符串,这时候我想只输入一个或者一串指定字符就可以替换为刚才的字符,比如我指定输入“aming”系统就会自动把“aming”替换成“abcdefghijklmnopqrstuvwxyz”
在一般模式下输入“:ab aming abcdefghijklmnopqrstuvwxyz”然后回车,再进入编辑模式,当你输入“aming”的时候就会发现自动替换成了“abcdefghijklmnopqrstuvwxyz”