vim编辑器是Linux操作系统中著名的功能强大的编辑器,在Vi的基础上改进和增加了很多特性,例如支持正则表达式的搜索、多文件编辑、块复制等等,也会依据文件扩展名或者是文件内的开头信息, 判断该文件的内容而自动的执行该程序的语法判断式,再以颜色来显示程序代码与一般信息, 这对于我们在Linux上进行一些配置文件的修改工作时是很棒的功能。
1、vim的三种模式
③vim + 文件名,直接定位到最后一行行首
④vim +/PATTERN 定位到第一个被PATTERN匹配到的行首
[root@localhost lizf]# vim +/root /etc/sudoers
如何设置当root用户使用vim时自动显示行号:
echo "set nu" >> /root/.vimrc
3、命令模式(也叫普通模式)下操作详解
光标移动:
w:移到下一个单词的词首
e:跳至当前或下一个单词的词尾
b:跳至当前或上一个单词的词首
#w:表示移动#个单词
0:绝对行首 (home键也可)
^:行首第一个非空白字符
$:绝对行尾(end键也行)
#G :跳转#行
G :跳转到文件的最后一行
gg:跳转到文件的第一行
`. :到你上次编辑文件的地方。这个命令很有用,而且你不用自己去标记它。
Ctrl+f:向下翻一屏
Ctrl+b:向上翻一屏
Ctrl+d:向下翻半屏
Ctrl+u:向上翻半屏
编辑数据:
x:删除当前光标所在位置的字符
dd:删除当前光标所在行
dw:删除当前光标所在位置的单词
d$:删除当前光标所在位置至行尾的内容
yy:复制
p:粘贴
u:撤销前一编辑命令
. :执行上次操作的命令,比如上次操作dd命令,执行.后会再次执行dd命令
/PATTERN :查找关键字PATTERN
/^PATTERN : 查找以PATTERN开头的内容
/PATTERN$:查找以PATTERN结尾的内容
n:向下查找
N:向上查找
Ctrl+v : 块选择,可以用长方形的方式选择资料 (提制竖列), Ctrl+v 块选择后Shift+i,就可以批量插入,按Esc后就可以进行批量操作。
4、进入编辑模式:
i:在当前字符的左边插入
I:在当前行首插入
a:在当前字符的右边插入
A:在当前行尾插入
o:在当前行下面插入一个新行
O:在当前行上面插入一个新行
5、末行模式
保存退出
w:保存
q:退出
q! :强制退出,不保存
wq!:强制保存退出
查找并替换关键字
:s/OLD/NEW/ 替换光标所在位置行第一个匹配的字符
:s/OLD/NEW/g 替换光标所在位置行全部匹配的字符
:%s/OLD/NEW/g 替换整片文匹配的字符
:1,$ s/^/#/g 第一行到最后一行(可以指定行)在开头添加#
:1,$ s/^#//g 第一行到最后一行去掉最前面的#号
显示或取消行号
set nu(set number):显示行号
set nonu:取消显示行号
显示忽略或区分字符大小写
set ic (set ignorecase):忽略大小写
set noignorecase:区分大小写
设定自动缩进
set ai(set autoindent):自动缩进
set noai:取消自动缩进
查找到的文本高亮或取消高亮显示
set hlsearch:高亮显示搜索到的文本
set nohlsearch:取消高亮显示搜索到的文本
语法高亮
syntax on:打开语法高亮显示
syntax off:关闭语法高亮显示