Linux Vim 常用实用指令

  • 保存与退出
  • 复制粘贴删除
  • 撤销
  • 插入
  • 使用命令计数
  • 移动光标
  • 滚屏
  • 在文本中查找下一个word
  • 多行注释
  • 多文件编辑


风萧萧兮易水寒

保存与退出

:w 保存文件但不退出
:w file 将修改另外保存到file中,不退出
:w! 强制保存,不退出
:wq 保存文件并退出 (快捷键 SHIFT - ZZ)
:wq! 强制保存文件,并退出
q: 不保存文件,退出
:q! 不保存文件,强制退出
:e! 放弃所有修改,从上次保存文件开始再编辑

复制粘贴删除

单行复制 将光标移到复制行 按 yy 进行复制
粘贴 将光标移到粘贴行 按 p 进行粘贴
删除一行 dd 命令。删除后下面的行会移上来填补空缺。
删除字符 将光标移到该字符上按下 x。
多行删除:
A:首先在命令模式下,输入“:set nu”显示行号 通过行号确定你要删除的行,命令输入“:32,65d”,回车键,32-65行就被删除了
B: 11,$d删除11行及以后所有的行
C: 1,$d 删除所有行

撤销

命令 u,它可以撤消上一次的操作。

插入

i命令可以在当前光标之前插入文本。
I 命令可以在此行起始位置插入。
a 命令可以在当前光标之后插入文本。
o 命令可以在当前行的下面另起一行,并使当前模式转为Insert模式。
O 命令(注意是大写的字母O)将在当前行的上面另起一行。

使用命令计数

假设你要向上移动9行。这可以用"kkkkkkkkk"或"9k"来完成。事实上,很多命令都可以接受一个数字作为重复执行同一命令的次数。在行尾追加三个感叹号,用的命令是"a!!!"。另一个办法是用"3a!“命令。3说明该命令将被重复执行3次。同样,删除3个字符可以用"3x”。指定的数字要紧挨在它所要修饰的命令前面。

移动光标

$ 命令将光标移动到当前行行尾。
^ 命令将光标移动到当前行的第一个非空白字符上。
0 命令则总是把光标移动到当前行的第一个字符上(数字0)。
$ 命令还可接受一个计数,如1$ 会将光标移动到当前行行尾,2$ 则会移动到下一行的行尾,如此类推。 0 命令却不能接受类似这样的计数,命令"^"前加上一个计数也没有任何效果。
移动到指定行
gg 命令是跳转到第一行的快捷方法。
G 命令指定一个命令计数,这个命令就会把光标定位到由命令计数指定的行上。比如33G就会把光标置于第33行上。
没有指定命令计数作为参数的话, G 会把光标定位到最后一行上。
另一个移动到某行的方法是在命令 % 之前指定一个命令计数比如50% 将会把光标定位在文件的中间. 90% 跳到接近文件尾的地方。
命令H ,M,L, 分别将光标跳转到第一行,中间行,结尾行部分。

当然,我们为了让用户更加便捷,我们增加了图片拖拽功能。

滚屏

CTRL-U 显示文本的窗口向上滚动了半屏。
CTRL-D 命令将窗口向下移动半屏。很实用
CTRL-E (向上滚动)和CTRL-Y(向下滚动) 一次滚动一行。
要向前滚动一整屏使用命令CTRL-F。向后滚动一整屏CTRL-B
zz 命令会把当前行置为屏幕正中央,zt 命令会把当前行置于屏幕顶端,zb 则把当前行置于屏幕底端.

在文本中查找下一个word

把光标定位于这个word上然后按下 * 键。Vim将会取当前光标所在的word并将它作用目标字符串进行搜索。
# 命令是 * 的反向版。还可以在这两个命令前加一个命令计数
3* 查找当前光标下的word的第三次出现。

多行注释

CTRL-V 进入列(也叫区块)模式;
在行首使用上下键选择需要注释的多行;
按下键盘(大写)I 键,进入插入模式(I 在本行起始位置插入);
然后输入注释符(// , # 等);
最后按下Esc键。
删除多行注释:
首先按esc进入命令行模式下,按下CTRL-V 进入列模式
选定要取消注释的多行;
按下 x 或者 d (删除光标字母)注意:如果是“//”注释,那需要执行两次该操作,如果是“#”注释,一次即可

多文件编辑

vim可以后面同时接好几个文件来同时打开
:n 编辑下一个文件
:N 编辑上一个文件
:files 列出目前这个 vim 的打开的所有文件