vim 是 vi 的升级版
最明显的区别就是 vim 会显示文件内容变成高亮颜色
vim 显示颜色的条件有很多, 同样文件在不同目录会显示不一样的颜色
安装 vim
[root@ygwlinux ~]# yum install -y vim-enhanced
vim 分为 一般模式, 编辑模式, 命令模式
直接 vim 或者 vi 进一个文件的时候, 我们是在一般模式, 是不能修改的, 只能上下左右翻动查看
vim 在一般模式下按 G 键快速移动到文本文件的最末行, 两下 g 快速移动到文本文件的最首行
快速定位到 30 行
30G, 想把光标定位到哪就输入行数加 G
i 键开始插入, 就是进入编辑模式
vim +3 文件
打开文件光标从第三行开始
在 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
来源: http://www.bubuko.com/infodetail-2510989.html