一、vim的命令模式
:set + 调整参数(用来调整vim的工作方式)
:set nu ## 显示行号 :set nonu ## 不显示行号
:set mouse =a ## 显示鼠标
:set cursorline ## 显示行线
注意:在vim命令行中的设置是临时的,要永久保存设置需在/etc/vimrc(配置文件)里面设置。
命令模式下字符的搜索: /关键字
字符的管理:
y :复制字符
yl: 复制光标所在的一个字符 y3l: 复制光标所在的3个字符
yw: 复制光标所在的单词 y3w: 复制光标所在的三个单词
yy: 复制光标所在的行 y3y: 复制光标所在的三行
d :字符的删除
dl: 删除光标所在的一个字符 d3l: 删除光标所在的3个字符
dw: 删除光标所在的单词 d3w: 删除光标所在的三个单词
dy: 删除光标所在的行 d3y: 删除光标所在的三行
c : 字符的剪切
cl: 剪切光标所在的一个字符 c3l: 剪切光标所在的3个字符
cw: 剪切光标所在的单词 c3w: 剪切光标所在的三个单词
cy: 剪切光标所在的行 c3y: 剪切光标所在的三行
注意:在剪切之后vim会有命令模式进入到插入模式,需先退出插入模式(按ESC退出)再进行粘贴。
p:粘贴,一般情况下使用y和c选择字符后,将光标移动到所要粘贴的地方,按p即可完成字符的粘贴。
u:撤销,在以上操作中,如果操作失误要返回上一步的操作,可按u进行撤销。
vim可视化模式:
ctrl + v ## 此模式下可以选择区域操作
1) 批量添加字符:
ctrl + v 选中要加入字符所在的位置 ----> 按大写I ----> 加入字符 ----> 按esc退出,即可实现字符的批量添加。
2) 字符的替换
:%s/要替换的字符/替换成的字符/g
:1,5s/:/#/g ## 将1-5行的“:”替换为“#”
:%s/^ *//g ## 删除任意多个空格
:8,14/#/$/g是将8-14行的所有“#”改成“$”,结果如下所示
3) 分屏功能
按ctrl + w,然后再按s,可进行上下分屏;按v,可进行左右分屏
ctrl + w,再加上下左右键,可将光标移动到指定区域
:sp file2 ## 同时编辑多个文件
4) 命令模式下光标的移动
gg ## 移动到文件的开头
G ## 移动到文件的结尾
:数字 ## 移动到指定行
二、vim的插入模式
i ## 按i进入插入模式,可在光标所在位置插入,也可移动光标到想插入的地方进行插入,如下图所示
I (大写i) ## 所在行首插入
o ## 光标所在下一行插入
O ## 光标所在上一行插入
a ## 光标所在下一个字符插入
A ## 光标所在行的行尾插入
s ## 删除光标所在的字符,并且插入
S ## 删除光标所在的行,并且插入
三、vim的退出模式
插入模式下编辑完成后,按esc退出插入模式。
:wq ## 退出保存
:q ## 没有改变内容时的退出
:q! ## 强制退出不保存,在改变文件内容后不想保存时使用
:wq! ## 强制退出保存,当前用户文件或者操作的用户是root
四、vim的异常处理
在编辑一个文件时就会生成一个.filename.swp的文件,以备不测,若文件正常退出,则这个文件会自动删除
当vim异常退出时,再次进入编辑此文件时会提示错误,根据提示,只有按D会删除.swp文件,不再出现异常,未保存部分R进入可进行修改,或者直接删除.filename.swp文件。