Linux(centos)安装vim
yum -y install vim*
1.检查是否已安装
ps:Centos7 最新版本默认已经安装vim,可以使用命令查看是否安装
查看一下你本机已经存在的包,确认一下你的VIM是否已经安装,输入:
rpm -qa|grep vim
输出结果如下,如无以下输出结果,则安装vim

2.安装
如果缺少了其中某个,比如说: vim-enhanced这个包少了,则执行:
yum -y install vim-enhanced
它会自动下载安装。如果上面三个包一个都没有显示,则直接输入命令:
yum -y install vim*
执行命令后会自动安装;
3.配置
安装完成后开始配置vim
vim /etc/vimrc
打开文件后,按 i 进入编辑模式,在最后 添加如下代码, 添加好了之后,按Esc,然后输入 :qw 退出并保存即可。
set nu " 设置显示行号 set showmode " 设置在命令行界面最下面显示当前模式等 set ruler " 在右下角显示光标所在的行数等信息 set autoindent " 设置每次单击Enter键后,光标移动到下一行时与上一行的起始字符对齐 syntax on " 即设置语法检测,当编辑C或者Shell脚本时,关键字会用特殊颜色显示
相关功能
**********************************************************************
常用基本命令
以下移动都是在normal模式下。
- h或退格: 左移一个字符;
- l或空格: 右移一个字符;
- j: 下移一行;
- k: 上移一行;
- gj: 移动到一段内的下一行;
- gk: 移动到一段内的上一行;
- +或Enter: 把光标移至下一行第一个非空白字符。
- -: 把光标移至上一行第一个非空白字符。
- w: 前移一个单词,光标停在下一个单词开头;
- W: 移动下一个单词开头,但忽略一些标点;
- e: 前移一个单词,光标停在下一个单词末尾;
- E: 移动到下一个单词末尾,如果词尾有标点,则移动到标点;
- b: 后移一个单词,光标停在上一个单词开头;
- B: 移动到上一个单词开头,忽略一些标点;
- ge: 后移一个单词,光标停在上一个单词末尾;
- gE: 同 ge ,不过‘单词’包含单词相邻的标点。
- (: 前移1句。
- ): 后移1句。
- {: 前移1段。
- }: 后移1段。
- fc: 把光标移到同一行的下一个c字符处
- Fc: 把光标移到同一行的上一个c字符处
- tc: 把光标移到同一行的下一个c字符前
- Tc: 把光标移到同一行的上一个c字符后
- ;: 配合f & t使用,重复一次
- ,: 配合f & t使用,反向重复一次
上面的操作都可以配合n使用,比如在正常模式(下面会讲到)下输入3h, 则光标向左移动3个字符。
- 0: 移动到行首。
- g0: 移到光标所在屏幕行行首。
- ^: 移动到本行第一个非空白字符。
- g^: 同 ^ ,但是移动到当前屏幕行第一个非空字符处。
- $: 移动到行尾。
- g$: 移动光标所在屏幕行行尾。
- n|: 把光标移到递n列上。
- nG: 到文件第n行。
- :n<cr> 移动到第n行。
- :$<cr> 移动到最后一行。
- H: 把光标移到屏幕最顶端一行。
- M: 把光标移到屏幕中间一行。
- L: 把光标移到屏幕最底端一行。
- gg: 到文件头部。
- G: 到文件尾部。
vim 文字图:

vim教程网总结了30个非常实用的Vim使用技巧,以便大家使用Vim时更加得心应手。
- 删除从光标位置到单词结尾之间的字符并进入插入模式:
cw - 删除光标所在单词并进入插入模式:
ciw,删除光标所在位置的单词及空格:daw - 高亮选中标签内部的内容:
vit - 正向移动到下一单词的开头:
w,反向移动到当前单词/上一单词的开头:b - 移动到当前行的第n列:
n|
Vim快速跳转任意行、任意列详细介绍了 | 命令。
- 重绘屏幕并把当前行显示在窗口正中:
zz - 将光标所在行移到窗口的顶端:
zt,将光标所在行移到窗口的底部:zb - Vim跳转位置前进:
<Ctrl-i>,跳转位置后退:<Ctrl-0>,类似浏览器的前进后退功能 - 回到上次跳转的位置:
'',回到上次编辑的位置:'.
Vim位置标记介绍
- 重复执行上次的Vim命令行模式命令:
@: - 查看Vim当前打开文件的文件名、位置信息和状态等:
<Ctrl-g>(同时按下Ctrl键和g键) - Vim命令行模式下,
%表示当前活动缓冲区对应文件的完整文件路径
更多内容,可以查看Vim教程网上的文章Vim打开文件命令edit和保存文件命令write
- 不离开插入模式,粘贴寄存器中的文本:
<C-r>{register}({register}是我们想要插入的寄存器的名字) - 重选上一次由可视模式所选择的文本范围:
gv
- 在Vim可视化模式下高亮选中区域后按下
:键,命令行上会预先填充一个范围:'<,'>代表高亮选区的范围 - 把任意寄存器的内容插入到命令行:
:<Ctrl-r>{register} - 插入模式下同时按下
<Ctrl-r>,再输入=后,输入任意算数式(如333*2),回车,即可看到运算结果 (这是使用了Vim表达式寄存器"=) - 只读寄存器
"%表示Vim当前活动文件缓冲区的文件名,在Vim插入模式下,按<Ctrl-r>%可将当前文件名输入到文件中
关于Vim寄存器的更多内容,可以参考Vim教程网上的文章《vim寄存器介绍》
- 把光标所在当前单词插入Vim命令行:
<Ctrl-r><Ctrl-w> - 光标所在行用
.表示,文件的最后一行用$表示,%整个文件 (:1,$的简写形式) - 删除当前光标到本行行尾的所有内容:
d$,删除当前光标到本行行首的所有内容:d0 - 删除所有行:
dG或:%d - 调换Vim当前光标之后的两个字符的顺序:
xp - 当前行自动缩进对齐 (又称自动格式化):
==,当前文件所有行自动缩进对齐:gg=G - 正向移动到下一个 {char} 所在之处的字符上:
f{char},正向移动到下一个 {char} 所在之处的前一个字符上:t{char} - Vim普通模式下
;命令会重复查找上次f命令所查找的字符
关于 t 命令的介绍,可以查看文章Vim字符查找与光标快速移动
- Vim分屏后增加某个屏幕的高度:
<Ctrl-w>+(先同时按下Ctrl键和w键,再按下+键) - 把多个标签页中的所有文件中的单词 food 都替换成 drink,可以使用
tabdo命令::tabdo %s/food/drink/g - 临时退出插入模式,执行单条命令又返回插入模式:
<Ctrl-o> - 修改当前光标所在字符为a:
ra - 将单词转成大写:
gUiw,将当前单词转成小写:guiw - 另存为文件:
:saveas <filename> - 读取文件并将内容插入到光标后:
:r <filename> - 回退到15分钟前的文件内容:
:earlier 15m