vim是Linux下趁手的兵器(命令行下也没有notepad++这样的东西),只是快捷键有点多,而且大多没啥逻辑,只能说用的多了就好了。Whatever,所有的Linux发行版都有vim,我们有必要熟悉它的基本操作。
- 普通模式
- 编辑模式
- 命令行模式
几种模式切换:
插入图片
像Windows下的Home/End/PageUp/PageDown在vim下都是可用的。很多操作的实现都有多种方式,没必要记下所有的快捷键。
普通模式下:
移动光标 | |
---|---|
G | 移动到最后一行 |
nG | 移动到第n行 |
gg | 移动到第一行,相当于1G |
删除、复制、粘贴 | |
---|---|
x,X | x为向后删除(Del),X为向前删除(Backspace) |
dd | 删除光标所在整行 |
yy | 复制光标所在行 |
p,P | 粘贴已复制的文本,p为粘贴在光标下一行,P粘贴在光标上一行 |
查找 | |
---|---|
/word | 输入要查找的文本回车即可,向下找 |
?word | 同上,只是”/”向下找,”?”向上找 |
n,N | n为重复前一个查找动作,N为与前一个查找动作反向 |
编辑模式
进入插入或替换模式 | |
---|---|
i,I | i从当前光标插入,I在光标当前行的第一个非空格符插入 |
a,A | a从当前光标下一个字符插入,A当前行的最后一个字符插入 |
o,O | o从当前光标下一行插入新行,O当前光标上一行插入新行 |
r,R | 替换模式:r |
命令行模式
vim的命令行模式下命令也可以上下箭头复用,跟在普通命令行下一样。
替换:
必须在命令行模式下,替换命令:
:s/old/new/g 替换光标所在行的所有old
:n,ms/old/new/g 替换行号n和m之间所有的old
:%s/old/new/g 替换整个文件所有old
:%s/old/new/gc 替换整个文件所有old,每次替换时会有提示,其他多次替换时也可以加c提示
如果要替换的字符串中也含有路径“/”字符,则可以用“#”当做作为字符串中的分隔符。
参考链接:
http://blog.csdn.net/beikejinmiao/article/details/48056447