介绍vi/vim 相关命令,主要涉及:编辑、搜索、查找、定位。
分为两个章节,即常用命令 及 键盘图
-
一、vi/vim常用命令
set nu 显示行号 gg 跳转到文件开头 / 向后搜索 ? 向前搜索 n 查找下一处 N 查找上一处 | 光标所在行行首 L 屏幕所显示的底行 { 段首 } 段尾 - 前一行行首 + 后一行行首 ( 句首 ) 下一句首 $ 行末 M 屏幕中间行 行首(零) hjkl 左下上右 x 删除光标所在字符 R 替换模式(可以替换任意字符) r 单个替换 dd 删除光标所在的行 D 删除至行末(从光标位置开始) s 删除字符并插入(单个字符删除,并进入插入模式) S 删除行并插入(整行删除) >> 缩进(相当于一个tab) << 反缩进 = 自动格式化 J 合并上下两行 I 插入到行首 i 插入 C 从光标处开始修改至行位 a 在光标后附件或追加 A 在行末追加 p 粘贴(后) P 粘贴(前) Esc 命令模式 ZZ 保存退出编辑(vi,含保存) ZQ 不保存退出编辑
二、操作大全细节说明:
vim有强大的字符串查找功能。
我们通常在vim下要查找字符串的时候, 都是输入 / 或者 ? 加 需要查找的字符串来进行搜索,比如想搜索 super 这个单词, 可以输入 /super 或者 ?super, 两者的区别是前者是从上往下搜索,后者是从下往上搜索。
那么如果我想搜索本行中某个单词,并且这个单词很长的时候, 手动输入该字符串是非常麻烦的, 当然可以使用模糊匹配(如* 或 ?)来做, 不过这样可能搜得到很多其他的,不完全匹配的字符串。
可以使用如下方式来实现快速查找:
1, 最快的方式是让光标停留在想要查找的单词的任意一个字母上面, 然后输入Shift + * ,即可快速选中该单词,并且可以通过 n 或 N 进行上一个或下一个的匹配。
注意:使用此方法所有匹配单词会高亮,要取消高亮,输入:noh 来取消高亮.
2, 让光标停留在单词的第一个字母上, 然后输入yw拷贝该单词, 然后输入 / (Ctrl + R) 0 (即 /”0),回车, 就查找到了第一个匹配的单词, 并且可以通过 n 或 N 进行上一个或下一个的匹配。
解释一下:
Ctrl + r 是指使用寄存器 , 你会发现先输入/ , 然后输入 Ctrl + r , 会立刻变为 “ , 即寄存器的前缀, 然后 ”0 就可以理解了吧? 合起来就是 /“0, 就是查找刚才复制的那个单词, 不懂的请查看上一个帖子:
http://blog.csdn.NET/ballack_linux/article/details/53078836
3, 还有一种方式, 和第二种方式差不多,不过是将单词拷贝到系统剪贴板, 然后再从系统剪贴板拿出来。 即选中需要查找的单词, 然后输入 “+y, 然后输入/(Shfit + Ctrl + v), 就查找到了第一个匹配的单词, 并且可以通过 n 或 N 进行上一个或下一个的匹配。
以上, 最方便的还是第一种, 高效快捷, 值得推荐!!