最近刚好在搞一些服务器相关的东西,为此需要在linux下做些编辑操作,刚好去学了下vim,顺手记录下来,以防之后一阶段没用的时候又忘掉!
看到vim一大堆的操作命令,刚开始我也吓一跳,不过,还是要硬着头皮上,使用了几次之后发现,其实也就是一个编辑器而已,再多的命令,用多了自然就熟悉了,完全不需要再去记忆,需要用什么指令,手指自然的就能够反应过来了!,所以,学东西最快,最好的方式就是直接去用,管它难不难,用多了,也就不难了!废话不说了,开工!
1、为什么学VIM?
VIM可以看做是VI的进阶版本,而在所有的类Unix系统中,都会內建VI编辑器,并且在类Unix系统中的个别程序软件的编辑接口都会呼叫VI,不学会使用VI很多的指令都没办法使用,VIM可以使用VI的几乎所有指令,并且做了增强,比如当编辑一个程序文件时,可以自动呼叫改程序的语法判断式,对程序代码进行着色!此外,VIM增加很多额外的功能:多档案编辑、区块复制啥的!
2、VI/VIM的使用
PS:以下介绍所有操作都可以在VI和VIM上使用
2.1、模式
VIM共分有三种模式:一般模式、命令模式、编辑模式,三种模式作用分别是:
- 一般模式
直接在命令行输入vi/vim,或者使用vi/vim即进入一般模式(默认模式),在这个模式可以使用【上、下、左、右】【H、J、K、L】进行移动,也可以复制,粘贴,删除 - 命令模式
在一般模式下输入[:/?]中的任何一个就会把光标移动到最底下一行,此模式提供【资料搜寻】【读取】【存盘】【大量取代字符】【离开vi/vim】【设置行号】等等 - 编辑模式
在一般模式下输入【i、I、o、O、a、A、r、R】任何一个字母时则进入了编辑模式,当按下这些按键时在画面左下角会出现【INSERT/REPLACE】字样
2.2、使用vi/vim
- 进入vi/vim一般模式
直接在命令行输入vi/vim或者输入vi filename/vim filename来进入vi/vim的一般模式
直接输入vim:
结果:
输入vim test.txt(无论test.txt是否存在): - 编辑文件内容
按下【i、o、a】任何一个按键皆可进入编辑模式,在编辑模式中,左下角的显示INSERT字样,此时可以输入任何字符,除了【ESC】字符,可以进行任何编辑
- 离开编辑模式,返回一般模式
当我们完成编辑之后,按下【ESC】按键,则可以离开编辑模式,返回一般模式,按下【ESC】之后将会发现左下角的【INSERT】不见了 - 保存文件内容,离开vi/vim
那现在就需要进行存档了,在一般模式下按下【:】(必须要英文标点),则进入命名模式,光标将移动到最下面一行等待输入命令,输入:wq则可以保存文档并离开vi/vim,当然,还可以使用:q!强制退出vi/vim,并放弃所有未保存更改
PS:若刚才进入vi/vim的时候没有带文件名,则在保存时需要加上文件名,即:wq filename
3、vi/vim按键说明
3.1、一般模式
h或向左箭头 | 光标向左移动一个字符 |
j或向下箭头 | 光标向下移动一个字符 |
k或向上箭头 | 光标向上移动一个字符 |
l或向右箭头 |
光标向右移动一个字符 |
ctrl+f或功能键[PageDown] |