vim是常见于linux各版本的文本编辑器,很多linux发行版可能没有nano,但基本都能装一个vim,因此它比较通用,处理一些简单的脚本和配置够用了,这里记录最基本的用法,很多高端的用法平时根本用不着,咱们主打一个实用,实用为王,够用就行!
1. 打开/新建一个文件:vim test.txt
2. vim模式
vim 有三种模式,分别是命令模式,编辑模式,扩展命令模式,这三种模式可能有不同叫法,但是,意义或作用都一样
2.1 命令模式:输入vim命令打开或新建一个文本后会先进入命令模式界面
按i插入、a追加,按o新增一行,进入编辑模式
按 : 输入扩展命令模式
2.2 编辑模式:可以编辑文件内容,按ESC返回命令模式
2.3 扩展命令模式:可以输入扩展命令,以实现特定功能,输入命令行按回车,执行命令,同时返回命令模式
3. 命令模式
3.1 0跳到本行开头 $跳到本行结尾
3.2 gg跳到文件第一行开头 G跳到文件结尾
3.3 v,V,Ctrl+v区块选择,搭配y(复制),d(删除、剪切)
3.4 u撒销前面操作,Ctrl+r恢复刚才撒销的操作,r替换一个字符
3.5 y复制:yy复制一行,4y复制4行,ygg复制从第一行到光标位置,yG复制从光标位置到文件结尾
3.6 d删除/剪切,和y类似
3.7 p粘贴:在光标后面粘贴复制或剪切来的内容
3.8 /name查找name,光标跳到相应处,/^name查找以name开头的词,/name$查找以name结尾的词,/na..e 这里.代表任意一个字母,找na且隔两个字符后面是e的词,/na*e 这里*代表若干字符,找到na跟若干字符后接e的词
4. 扩展命令:
4.1 :w 保存; :w file另存为file; :q 退出; :!q 强制退出,不保存; :wq/:x 保存并退出
4.2 :n跳到第n行
4.3 替换
:1,5s@hello@good@g 在1到5行中将hello替换成good
g可选,有g的情况表示全匹配
1,5表示范围,以行为单位,这里是1到5行,它可以变成:% 范围是全文件; 3,$ 范围是从第3行到最后一行 ,10 范围是从光标所在行到第10行
1,5s@.*@//& .*表示整行,后面的&表示.*所代表的内容,这一句的意思是将1到5行前面都加//号
4.4 临时环境设置
:set number 显示行号
:set ai 自动缩进
:set cindent 设置C风格缩进
:set list 显示控制字符
:set nonumber/noai/nolist等取消上面的设置
5. vim环境设置
可以在~/.vimrc或/etc/vimrc加入上面的set命令,那以后使用vim时就会使用这些设置