原文地址: http://www.cnblogs.com/lizhenghn/p/3675011.html

在linux下做开发,甚至是只做管理维护工作,也少不了Vim的使用。作为一个新手,我也是刚刚接触,本节将我日常使用或收集的Vim常用命令记录下来。

当然,直接在命令行上输入:vimtutor,就可以学习到Vim的所有命令了。Vim很强大,很多牛人在vim里集成很多插件什么的,但这里只介绍基本vim命令。

移动命令

h      "左
j "下
k "上
l "右
w "光标移动到下一个单词的首字符 a word forward
b "光标移动到上一个单词的首字符
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的功能相同,唯一的区别就是搜索的方向相反

注:

  1. 可以用:set noingorecase 忽略字符大小写;
  2. /和?命令都有记忆功能,可以用多次<UP>键选择搜索历史,记录命令最大的历史条数可以在会话viminfo上更改;
  3. 搜索字符.*/?%$^[]等特殊字符要在前面加一个反斜杠转意;
  4. 搜索到孤立的单词,也就是前后都没有其他字符的(除了空格,制表符),如只搜the,不想搜到there或whether这样的,要用/\<the\>;
  5. 可以用:set hlsearch把要搜索的单词高亮显示;

定位命令

G      "光标移动到文件的最后一行,或者Shift+G
15G "光标移动到文件的第15行,或者15gg
gg "光标移动到文件的第一行
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页

暂时就这么多了,以后学习到新的命令了还会持续更新的。

另外高级的Vim命令请参考:

简明 Vim 练级攻略

无插件Vim编程技巧

Linux下Vim工具常用命令的更多相关文章

  1. [日常] Linux下vim的常用命令总结

    vim按d表示剪切按dd剪切一行vim命令:命令模式 /关键字 n继续向下查找 vim的多行注释:1.按ctrl + v进入 visual block模式2.按上下选中要注释的行3.按大写字母I,再插 ...

  2. linux下vim的常用指令

    进入vi的命令 vi filename :打开或新建文件,并将光标置于第一行首 vi +n filename :打开文件,并将光标置于第n行首 vi + filename :打开文件,并将光标置于最后 ...

  3. 查看Linux下系统资源占用常用命令(top、free、uptime)

    本文介绍下,在linux中查看系统资源占用的三个命令:top.free.uptime,通过实例学习下它们的用法,有需要的朋友参考下 一,top命令 1.作用top命令用来显示执行中的程序进程,使用权限 ...

  4. 查看Linux下系统资源占用常用命令

    一 top命令 1.作用top命令用来显示执行中的程序进程,使用权限是所有用户. 2.格式top [-] [d delay] [q] [c] [S] [s] [i] [n] 3.主要参数d:指定更新的 ...

  5. Linux下C++开发常用命令

    本页面记录本人在Linux下进行C++开发时使用的常用命令,注意这里不包括比如ls,mv等linux命令,这里会持续更新.首先假设你只有一个源程序文件,叫vec.cpp,编译后的可执行程序叫vec(本 ...

  6. Linux下的一些常用命令(一)

    在Linux环境下敲各种命令是再正常不过了,尤其是现在大多少服务器均为Linux系统,但是我又记不住这么多命令,只是偶尔在项目做完发布到服务器上的时候会涉及到,所以在网上找了一些命令,在此记录一下~ ...

  7. 总结Linux 下Redis 操作常用命令(转)

    Redis的配置 Linux下安装 ]# wget http://download.redis.io/releases/redis-2.8.17.tar.gz ]# tar xzf redis-2.8 ...

  8. Linux下安装maven-及常用命令

        Linux下安装maven1.首先到Maven官网下载安装文件,目前最新版本为3.0.3,下载文件为apache-maven-3.0.3-bin.tar.gz,下载可以使用wget命令: 2. ...

  9. Linux下一些简单常用命令的总结

    Cent os常用命令 查看当前目录信息: l s a:显示所有包括隐藏文件 l :列表显示数据 h:显示数据大小 查看命令帮助: XXX --help[比如:l shel p] 清除控制台信息: c ...

随机推荐

  1. codevs 1218 疫情控制

    啊好烦这道题.... 基本思路网上都有. 注意的一点是在匹配的时候,如果有军队的来源没有被匹配到,那么就先匹配这个来源.(因为不花钱). 不过数据好水.... #include<iostream ...

  2. ios tweak之binary not signed (use ldid -S)问题解决

    参考tweak教程写了个简单的tweak,无奈完全无效果,摸索了好长时间才找到方法: 打开terminal ssh root@192.168.1.100 vim /var/log/syslog 找到如 ...

  3. LeetCode Binary Tree Preorder Traversal 先根遍历

    题意:给一棵树,求其先根遍历的结果. 思路: (1)深搜法: /** * Definition for a binary tree node. * struct TreeNode { * int va ...

  4. javascript OOP编辑思想的一个实践参考

    <html> <style type="text/css"> .current { background-color: red; } .dv { backg ...

  5. 【 D3.js 高级系列 — 7.0 】 标注地点

    有时需要告诉用户地图上的一些目标,如果该目标是只需要一个坐标就能表示的,称其为"标注". 1. 标注是什么 标注,是指地图上只需要一个坐标即可表示的元素.例如,在经纬度(116, ...

  6. ffmpeg中swscale 的用法

    移植ffmpeg过程中,遇到swscale的用法问题,所以查到这篇文章.文章虽然已经过去很长时间,但是还有颇多可以借鉴之处.谢谢“咕咕鐘". 转自:http://guguclock.blog ...

  7. Sourcetree add Submodule

    LMXMN041:ximalaya will.wei$ git submodule add https://github.com/willbin/WeLib02.git Submodule Cloni ...

  8. 服务器安装Apache+Tomcat+Memcached共享Session的构架设计

    网站集群部署解决计划 一.       计划目标 实现互动留言系统.后台发布系统的高可用性,有效解决高并发量对单台应用服务器的打击,确保应用服务器单点故障不影响系统正常运行. 二.       部署架 ...

  9. Mac下配置PHP+Apache+phpMyAdmin+MySql远程链接

    最近的项目是微信公众号平台的开发,微信官方给出的Demo是PHP的,发现大部分的学习资料也是PHP,那好吧,放弃Java,来段儿PHP吧 下面说说Mac下搭建PHP环境 数据库:MySQL-5.6.2 ...

  10. 是时候学习Android分屏开发了

    今年Google发布了Android N,Android N新增了不少功能,最受关注的自然就是分屏了. 这一功能对国内的很多手机用户并不陌生,其实很多第三方系统早已经实现了这一功能,如EMUI,Fly ...