VIM基础命令笔记

发表于:2015-03-13 22:47:02,已有2320次阅读

前言

总结VIM常用命令,参照《鸟哥的LINUX私房菜》及网络整理

一,编辑命令

命令键 功能描述
x, X
在一行字当中,x 为向后删除一个字符 (相当于 [del] 按键), X 为向前删除一个字 符(相当于 [backspace] 亦即是退格键) (常用)


nx n
为数字,连续向后删除 n 个字符。举例来说,我要连续删除 10 个字符, 10x
dd 
删除游标所在的那一整列(常用)
ndd
n 为数字。删除光标所在的向下 n 列,例如 20dd 则是删除 20 列 (常用)
d1G
删除光标所在到第一行的所有数据
dG
删除光标所在到最后一行的所有数据
d$
删除游标所在处,到该行的最后一个字符
d0
那个是数字的 0 ,删除游标所在处,到该行的最前面一个字符
yy
复制游标所在的那一行(常用)
nyy
n 为数字。复制光标所在的向下 n 列,例如 20yy 则是复制 20 列(常用)
y1G
复制游标所在列到第一列的所有数据
yG
复制游标所在列到最后一列的所有数据
y0
复制光标所在的那个字符到该行行首的所有数据
y$
复制光标所在的那个字符到该行行尾的所有数据
p, P
p 为将已复制的数据在光标下一行贴上,P 则为贴在游标上一行! 举例来说,我目
  前光标在第 20 行,且已经复制了 10 行数据。则按下 p 后, 那 10 行数据会贴在
  原本的 20 行之后,亦即由 21 行开始贴。但如果是按下 P 呢? 那么原本的第 20 
  行会被推到变成 30 行。 (常用)
J
将光标所在列与下一列的数据结合成同一列
c
重复删除多个数据,例如向下删除 10 行,[ 10cj ]
u
复原前一个动作。(常用)
[Ctrl]+r
重做上一个动作。(常用)

不要怀疑!这就是小数点!意思是重复前一个动作的意思。 如果你想要重复删除、 重复贴上等等动作,按下小数点『.』就好了!

二,查找命令

命令键 功能描述
/word
向光标之下寻找一个名称为 word 的字符串。
?word
向光标之上寻找一个字符串名称为 word 的字符串。
n
这个 n 是英文按键。代表『重复前一个搜寻的动作』。
N
这个 N 是英文按键。与 n 刚好相反,为『反向』进行前一个搜寻动作。
:n1,n2s/word1/word2/g
n1 与 n2 为数字。在第 n1 与 n2 行之间寻找 word1 这个字符串,并 将该字符串取代为 word2,举例来说,在 100 到 200 行之间搜寻
  vbird 并取代为 VBIRD 则『:100,200s/vbird/VBIRD/g』
:1,$s/word1/word2/g
从第一行到最后一行寻找 word1 字符串,并将该字符串取代为   word2 !
:1,$s/word1/word2/gc
从第一行到最后一行寻找 word1 字符串,并将该字符串取代为 
word2 !且在取代前显示提示字符给用户确认 (confirm) 是否需要取
代!(常用)

三,编辑多个文件

1、如果在终端中没有打开vim,可以:

横向分割显示:
$ vim -o filename1 filename2  
纵向分割显示:
$ vim -O filename1 filename2

2、如果已经用vim打开了一个文件,想要在窗口中同时再打开另一个文件:

横向分割显示:
:vs filename
纵向分割显示:
:sp filename
其中,vs可以用vsplit替换,sp可以用split替换。
如果finename不存在,则会新建该文件并打开。

3、关闭窗口

关闭光标所在的窗口:
:q :close
关闭除光标所在的窗口之外的其他窗口:
:only
关闭所有窗口:
:qa

4、切换窗口

打开了多个窗口,需要在窗口之间切换时:
ctrl + w w
即按住ctrl键,再按两下w键。
或者ctrl + w <h|j|k|l>
即按住ctrl键,按一次w键,再按一次表示方向的hjkl,则光标会切换到当前窗口的 左|下|上|右 侧的窗口

评论

暂无评论

您还可输入120个字