转载自:http://blog.csdn.net/gavin__zhou/article/details/52078451
打开与关闭
vim /path/to/filevim +12 /path/to/file(打开文件后处于第12行上)vim $ /path/to/file(打开文件后处于最后一行上)q(直接退出不保存)wq(保存并退出)q!(强制退出,不保存)shift+z+z(保存退出)shift+z+q(不保存退出)
移动光标
字符移动
1.h: 左 2. j: 下 3. k: 上 4. l: 右 5. 3h: 左移3个 6. 4k: 下移4行(其它类推)
行内移动
0: 绝对行首^: 行首的第一个非空字符处$: 绝对行尾w: 下个单词词首e: 下个单词词尾b: 上个单词词首3w: 下3个单词词首5b: 上5个单词词首(其它类推)
行间移动
H: 文件头M: 文件中间L: 文件末尾10G: 第10行4+: 下4行=4j5-: 上5行=5k{: 上一段}: 下一段
翻屏
ctrl+d(向下翻半屏)ctrl+u(向上翻半屏)ctrl+f(向下翻一屏)ctrl+b(向上翻一屏)
删除
单字符删除
x: 向后删除一个字符X: 向前删除一个字符
多个字符删除
d0: 删除从当前字符到行首的所有d$: 删除从当前字符到行尾的所有d^: 删除从当前字符到行首第一个非空字符的所有3dh: 删除从当前字符向左的3个字符5dk: 删除当前行以上的5行(其余类推)dd: 删除当前行dw: 删除从当前向后的一个单词的词首de: 删除从当前向后的一个单词词尾db: 删除从当前向前的一个单词词首
复制
y0: 复制从当前字符到行首的所有y$: 复制从当前字符到行尾的所有y^: 复制从当前字符到行首第一个非空字符的所有ydh: 复制从当前字符向左的3个字符ydk: 复制当前行以上的5行(其余类推)yy: 复制当前行yw: 复制从当前向后的一个单词的词首ye: 复制从当前向后的一个单词词尾yb: 复制从当前向前的一个单词词首
替换
r: 替换当前的单个字符R: 从当前开始一直替换,直到ESC按下
粘贴
p: 粘贴最近一次复制/删除的内容(非整行粘贴至光标所在字符之后, 整行粘贴至光标所在字符下一行)P: 粘贴最近一次复制/删除的内容(非整行粘贴至光标所在字符之前, 整行粘贴至光标所在字符上一行)
撤销
u: 撤销所做的更改(比如删除等)ctrl+r: 撤销上一次撤销的(比如你撤销错了)
重复
.: 重复上一次编辑(比如重复删除,粘贴之类的)
模式
模式切换
编辑模式 —-> 命令模式 (ESC)命令模式 —-> 末行模式 (:)末行模式 —-> 命令模式(ESC)
末行模式
10,20d:删除10-20行., +5y: 复制当前行和向下5行的内容.,$-1d: 删除当前行和直到倒数第二行的内容
查找
/patten: 按照匹配的模式,从当前行向后查找?pattern: 按照匹配的模式,从当前行向前查找查找到之后,n: 下个匹配内容,N: 上个匹配内容
替换
同sed一样 1. 10, $-1s/he/HE/g(从当前行到倒数第二行,把所有的he替换为HE)
转载请注明原文地址: https://ju.6miu.com/read-13203.html