注:前缀':'表示vim命令(命令模式),前缀'$'表示为shell命令,
表示Ctrl + W,表示Ctrl + Shift+ 6,无前缀者
均为普通模式下的键盘按键。
基本的插入与修改:
        a       光标下一个字符处插入;
        i       在当前光标处插入;
        A       行尾插入;
        o       在光标下新建一行插入;
        r       键入替换一个字符;
        R       键入替换所有字符;
        `.      光标定位到上一次修改处;
        u       Undo
           Redo
        :e!     撤销所有修改。
        
文件查找与替换:
        *, #            向前/后查找相同单词(如果打开set hlsearch,
                        则自动高亮所有匹配单词)
        [[               
        /dest           按n查找下一个;N查找上一个;
        ?dest           反向查找;
        :#,#s/old/new/g 把几行之间的old全部替换成new
        :%s/old/new/g   整个文件全局替换,old -> new;
        :s/old/new      只替换下一个匹配的字符串
        :s/old/new/g    替换一行的 old -> new;
文件光标定位:
        %               括号配对
        ctrl + g        显示当前行号
        linenum + G     跳至某行
        G               跳至末行
        H               跳至首行
        ^               跳至行首
        $               跳至行尾
        fx Fx           移动到下一个/上一个x开头的单词
        [[              跳至上一个在第一列的{ (一般是函数的开头)
        ]]              跳至下一个在第一列的{
        {               跳至上一个空行
        }               跳至下一个空行
        gd              光标定位在某个局部变量上时,跳到它的定义处;
        使用cscope时,在源文件顶层运行
        $cscope-indexer 生成cscope的tags, 然后使用查找各种数据类型的定义,再使用
                        回到光标原来的位置.
shell:
        :!cmdname       临时使用shell命令cmdname
        :sh             暂时回到shell(exit回到vim编辑界面)
多文件操作:
        $ vi file1 file2        一次性读入多个文件(支持shell的所有通配符)
        :sp file                从一个新的水平分割窗口中打开文件file
        :vd file                从一个新的垂直分隔窗口中打开文件file
        :n、:N                  当前窗口进行文件间切换
                        当前窗口在两个文件之间切换
        :Sex                    在新的分割窗口中打开目录流览器
        :ls                     列出当前在编辑的文件
        :b x                    当前窗口跳到第x个文件buffer(:ls列出序号)
        :b file                 当前窗口跳到下一个文件名包含"file"的文件buffer
        +             多窗口中快速切换(ctrl + w两次)
其它:  
                      插入模式中,用于语法的单词/结构自动补全
常用设置:
        $ cp /usr/share/vim/vim70/vimrc_example.vim ~/.vimrc      
        以上是一个基本设置
        :set hlsearch   高亮显示/与?命令查找结果;
        :set num        显示每行行号
        Fterm登录时如果要使用vi的语法彩色,需要把termtype设置为
        xterm-color,或者$ export TERM=xterm-color应该也可以……

本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/24174/showart_175131.html

vi常用命令与设置(不断修改中)的更多相关文章

  1. Linux笔记:vi常用命令

    vi编辑器是所有Unix及Linux系统下标准的编辑器,在很多时候我们都需要使用vi修改服务端配置,vi其实非常强大,只要命令使用熟练的情况下,编辑速度并不亚于现在的图形化编辑器,这里简单地介绍一下它 ...

  2. vi 常用命令行

    vi 常用命令行 1.vi 模式  a) 一般模式: vi 处理文件时,一进入该文件,就是一般模式了.  b) 编辑模式:在一般模式下可以进行删除,复制,粘贴等操作,却无法进行编辑操作.等按下‘i,I ...

  3. Linux vi常用命令

    vi常用命令[Ctrl] + [f] 屏幕『向前』移动一页(常用)[Ctrl] + [b] 屏幕『向后』移动一页(常用)0 这是数字『 0 』:移动到这一行的最前面字符处(常用)$ 移动到这一行的最后 ...

  4. [转]vi 常用命令行

    From : http://www.cnblogs.com/sunormoon/archive/2012/02/10/2345326.html vi 常用命令行 1.vi 模式  a) 一般模式: v ...

  5. Linux的vi常用命令详解

    1.vi的基本概念  基本上vi可以分为三种状态,分别是命令模式(command mode).插入模式(Insert mode)和底行模式(last line mode),各模式的功能区分如下:   ...

  6. Linux入门学习笔记1:VI常用命令

    常用命令 yy 复制 p 黏贴 shift+v 多行选中 shift+ctrl+< 左移 shift+ctrl+> 右移 ndd 删除光标所在行及其后n-1行 i 进入编辑状态 esc 退 ...

  7. vi常用命令集锦

    转载,原文地址:http://blog.csdn.net/hackbuteer1/article/details/6575232 vi编辑器有3种模式:命令模式.输入模式.末行模式.掌握这三种模式十分 ...

  8. Vi 常用命令列表

    基本上vi可以分为三种状态,分别是命令模式(command mode).输入模式(Insert mode)和末行模式(last line mode),各模式的功能区分如下: 1) 命令模式(comma ...

  9. memcached的安装、常用命令以及在实际开发中的案例

    Memcached注意缺乏安全认证以及安全管制需要将Memcached服务器放置在防火墙(iptables)之后 Linux平台 (CentOS)安装Memcached 安装依赖yum -y inst ...

随机推荐

  1. 修改radio、checkbox、select默认样式的方法

    样式 radio select checkbox 兼容性 现在前端页面效果日益丰富,默认的input组件样式显然已经不能满足需求.趁着这次开发的页面中有这方面的需求,在这里整理一下修改radio.ch ...

  2. Creating a new Signiant Transfer Engine because the previous transfer had to be canceled.

    From: http://stackoverflow.com/questions/10548196/application-loader-new-weird-warning-about-signian ...

  3. [js综合问题汇总]js窗口关闭事件,表单名称,父窗口子窗口,var变量名

    <script type="text/javascript"> window.onbeforeunload = onbeforeunload_handler; //wi ...

  4. http://blog.csdn.net/majian_1987/article/details/44939911

    http://blog.csdn.net/majian_1987/article/details/44939911

  5. hdu 4794 FIb求循环节

    很容易看出来这道题是求模n意义下fib数列的最小循环节 对于fib数列的最小循环节的求法,我们可以这样: 1.令n=p1^m1 * p2^m2 * p3^m3…… 2.分别计算fib数列在模p1^m1 ...

  6. P127、面试题20:顺时针打印矩阵

    题目:输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字.例如:如果输入如下矩阵:1  2  3  4 5  6  7  89  10  11  1213  14  15  16则依次打印出 ...

  7. 推荐五款优秀的PHP代码重构工具

    在软件工程学里,重构代码一词通常是指在不改变代码的外部行为情况下而修改源代码.软件重构需要借助工具完成,而重构工具能够修改代码同时修改所有引用该代码的地方.本文收集了五款出色的PHP代码重构工具,以帮 ...

  8. [置顶] Maven多模块项目 eclipse热部署 Maven项目实现 tomcat热部署 二

    最近看到有好多童鞋比较热衷热部署,特别是多模块的项目,其实这热部署如果多模块比较大资源,容易内存溢出或者电脑卡住,并不建议这么做. 不过了解下也没有关系,这里我就在说说热部署的另外一种方法,因为我之前 ...

  9. poj2823

    这是一道题意简单,数据较大的题(喜闻乐见): 一开始可能会想到RMQ问题,ST,线段树都是O(nlogn),应该勉强能过(没试过): 由于这道题区间是滚动连续的,所以,可以使用单调队列! 以最小值为例 ...

  10. jquery提示气泡

    <link href="css/manhua_hoverTips.css" type="text/css" rel="stylesheet&qu ...