1.vi和vim区别
它们都是多模式编辑器,不同的是vim 是vi的升级版本,它不仅兼容vi的所有指令,而且还有一些新的特性在里面。
多级撤消 | 在vi里,按 u只能撤消上次命令,而在vim里可以无限制的撤消。 |
易用性 | vi只能运行于unix中,而vim不仅可以运行于unix,windows ,mac等多操作平台 |
语法加亮 | vim可以用不同的颜色来加亮你的代码。 |
可视化操作 | 就是说vim不仅可以在终端运行,也可以运行于x window、 mac os、 windows。 |
对vi的完全兼容 | 某些情况下,你可以把vim当成vi来使用。 |
2.vim的三种工作模式
命令模式,编辑模式,末行模式
2.1 命令模式(按ESC进入)
可以用vim加上任意一个已经存在或是想创建的文件名,如果系统还不存在该文件,就意味着创建文件,如果系统存在该文件,就意味着编辑该文件。此时就可以进入vim的默认模式—命令模式。此时vim等待输入正确的命令,键入的每一个字符都会当作命令来处理。
指令 | 功能 |
---|---|
yy | 复制光标所在行, 3yy:复制3行 |
dd/D | 删除/剪切当前行 |
p/P | 下行粘贴/上行粘贴 |
u | 无限次撤销 |
V | 按行选中 |
ctr+r | 反撤销 |
shift+>> | 往右缩进 |
shift+<< | 往左缩进 |
G | 回到最后一行 |
gg | 回到第一行 |
数字+G | 回到指定行 |
ctr+f | 下一屏 |
ctr+b | 上一屏 |
2.2 编辑模式
在进入命令模式之后,按下(a, i , o)等键可进入编辑模式。进入插入模式后可以对文件进行编辑,左下角显示–插入–
指令 | 功能 |
---|---|
a | 在光标所在字符后面插入 |
i | 在光标所在字符前面插入 |
o | 在光标下插入新行 |
2.3 末行模式(按:进入)
命令模式进入底行模式:按冒号 :
编辑模式进入底行模式:先按 Esc键退出到命令模式,然后再按冒号:
按下:号后,可以通过↑↓操作之前的指令
指令 | 功能 |
---|---|
:w | 保存文件 |
:wq | 保存并退出文件 |
: q | 正常退出文件(未修改) |
: q! | 强制退出文件 |
:x | 保存并退出文件(无论是否修改) |
:set nu | 设置行号 |
: set nonu | 取消行号 |
:/return | 搜索return这个词,按n找到下一个 |
:set hls | 设置搜索高亮 |
:set nohls | 取消搜索高亮 |
:1,6d | 删除1-6行所有内容 |
3.特殊的操作