三种模式之间转换:
一般模式
可用于光标移动、复制粘贴、查找替换
"vim.txt"表示文件名 8L 表示8行 , 80C 表示80个字符
移动光标常用操作:
h 、j、 k、 l 对应方向 ← 、↑ 、 ↓ 、 →
空格键-----------> 跳到下一个字符
0/ home键 -----------> 回到行首
$ / end键 -----------> 回到行末
数字n+空格键 ----------> 向后n个字符 (到行末会换行计算)
数字n+上下方向键 ------> 移动 n 行
ctrl + f/b -------------> 向下/上一页 (对应PageDowm、PageUp键)
数字n+左右方向键 -----> 移动 n 个字符
G ------->文件末
数字n +G------->定位第n行
gg -------> 文件首(相当于1G)
复制、粘贴、删除常用操作:
[数字n]+x,X --------> 删除后/前n个字符
[数字n]+dd --------> 删除n行
[数字n] +yy --------> 向后复制n行
p,P--------> 向后/前粘贴
u --------> 撤销操作
. --------> 重复前一个操作 (就一个 "点号"哦)
ctrl + r --------> 重复前一个操作 (亲测无效, 哪里不对?)
J --------> 将后一行结合为同一行
查找与替换:
/queryStr ------> 查找一个字符串 。可用 n,N键从查找中前后移动 。 另一种查找方法 ?queryStr
:1,9s/queryStr/replaceStr/[c] --------> 从1~9行的queryStr字符替换为replaceStr字符,c=confirm 让用户确认[可选参数]
s=substitution queryStr=查询的字符串 replaceStr=替换的字符串
编辑模式:
i,I a,A o,O r,R------> 进入编辑模式
esc退出键 ------------> 回到一般模式
命令模式:
w ------> write 写数据
q------> quite 退出
---> 强制执行 ( 需权限)
如:
:wq -----> 缓冲区数据写入文件并退出
:q! -----> 强制退出,不保存文件
:w! ------> 文件为只读时,强制保存文件 (需要权限)
:[mLine,nLine] w newFileName ------> 另存为一个新文件 。 [mLine,nLine] 为从m行到n行 ,此参数可省略。
:rfileName ------> r=read 读取一个文件的数据到光标后面
:! command -------> 暂时离开vim编辑器,并执行一条命令。
set nu --------> 显示行号, 取消显示为set nonu