查看: 492|回复: 0

[教程] Linux系统中vim工具常用命令大全

[复制链接]

9

主题

0

回帖

27

积分

技术1级

金币
18
阅读权限
10
精华
0
威望
0
贡献
0
在线时间
0 小时
注册时间
2011-10-12
QQ
发表于 2009-12-21 22:00:43 | 显示全部楼层 |阅读模式
在linux下做开发,甚至是只做管理维护工作,也少不了Vim的使用。作为一个新手,我也是刚刚接触,本节将我日常使用或收集的Vim常用命令记录下来。
当然,直接在命令行上输入:vimtutor,就可以学习到Vim的所有命令了。Vim很强大,很多牛人在vim里集成很多插件什么的,但这里只介绍基本vim命令。
移动命令
h      "左j      "下k      "上l      "右w      "光标移动到下一个单词的首字符 a word forwardb      "光标移动到上一个单词的首字符e      "光标移动到下一个单词的尾字符ge     "光标移动到上一个单词的尾字符$      "将光标移动到当前行行尾^      "将光标移动到当前行第一个非空白字符0      "将光标移动到当前行第一个字符

注:  这些命令除了'0'命令以外都可以在前面接受一个记数,2$;上面所有命令都可以在前面接受一些操作命令,如d$,dw等。
修改命令
x        "删除一个字符d        "其后跟任何一个位移命令,将删除从当前光标到位移终点处的文本         "内容,如dw,delete word                          c        "与d命令功能类似,不同的在执行完删除后命令进去Insert模式,change dd       "删除一整行yy       "复制一整行p        "把剪贴板内容粘帖到当前位置
vimdiff 1.c 2.c "创建一个垂直分割窗口比较这两个文件不同的地方

搜索命令
f<a>     "单字符搜索,fa是在当前行搜索下一个a,find a/string  "全文本搜索一个字符串,如要找到单词"func"则用/func         "如果文本有多个func,按下n就会移动到接下来的func位置上
        "n前面也可以接受数字计数,如3n,就会找紧接第三个func
?string  "与/string的功能相同,唯一的区别就是搜索的方向相反

注:
可以用:set noingorecase 忽略字符大小写;
/和?命令都有记忆功能,可以用多次<UP>键选择搜索历史,记录命令最大的历史条数可以在会话viminfo上更改;
搜索字符.*/?%$^[]等特殊字符要在前面加一个反斜杠转意;
搜索到孤立的单词,也就是前后都没有其他字符的(除了空格,制表符),如只搜the,不想搜到there或whether这样的,要用/\<the\>;
可以用:set hlsearch把要搜索的单词高亮显示;
定位命令
G      "光标移动到文件的最后一行,或者Shift+G15G    "光标移动到文件的第15行,或者15gggg     "光标移动到文件的第一行 45%    "光标移动到文件45%处H      "光标移动到当前屏幕的最开始M      "光标移动到当前屏幕的中间L      "光标移动到当前屏幕的最后

注:  CTRL+g查看当前光标位置
滚屏命令
CTRL+U  "窗口向上滚半屏CTRL+D  "窗口向下滚半屏CTRL+E  "向上滚一行,没太大实际意义CTRL+Y  "向下滚一行CTRL+F  "向前滚一整屏CTRL+B  "向后滚一整屏zz      "当前行置于屏幕中央zt      "当前行置于屏幕顶端zb      "当前行置于屏幕底端

分割窗口
:split    "横着分割:new      "横着添加一个新窗口:vsplit   "竖着分割:vnew     "竖着添加新窗口CRTL+W w  "按顺序切换小窗口:qall     "关闭所有窗口:wall     "保存所有窗口

标签(tab)命令
:tabedit filename "在正在编辑的vim窗口建一个叫filename的tab页:tab split "新建一个tab页gt         "移动到下一个tab页gT         "移动到下一个tab页
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

相关侵权、举报、投诉及建议等,请发 E-mail:qiongdian@foxmail.com

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部