• VI/VIM 常用命令


    VI/VIM 常用命令
    ===========

    整理自鸟哥的私房菜

    ----------

    - 移动光标

    命令                    | 描述
    ------------------------|------------------------------------------
    h                       |   光标向左移动一个字符
    j                       |   光标向下移动一个字符
    k                       |   光标向上移动一个字符
    l                       |   光标向右移动一个字符
    ctrl+f                  |   向下移动一页
    ctrl+b                  |   向上移动一页
    ctrl+d                  |   向下移动半页
    ctrl+u                  |   向上移动半页
    +                       |   光标移到下行的行首的非空字符处
    -                       |   光标移到上行的行首的非空字符处
    n<space>                |   光标向右移动n个字符
    0                       |   光标移到到该行的行首
    $                       |   光标移到到该行的行尾
    H                       |   光标移动到该屏首行的首字符处
    M                       |   光标移动到该屏中央的首字符处
    L                       |   光标移动到该屏最后一行的首字符处
    G                       |   光标移动到该文档最后一行的首字符处
    nG                      |   光标移动到该文档第n行的首字符处
    gg                      |   光标移动到该文档第1的首字符处,相当于1G
    n<Enter>                |   光标向下移动n行


    - 搜索与替代

    命令                    | 描述
    ------------------------|------------------------------------------
    /word                   |   从光标所在处向下搜索word
    ?word                   |   从光标所在处向上搜索word  
    n                       |   重复前一个搜索动作
    N                       |   反向进行前一个搜索动作
    :n1,n2s/word1/word2/g   |   在第n1,n2行之间搜索word1,并将其替代为word2
    :1,$s/word1/word2/g     |   在第1,最后一行之间搜索word1,并将其替代为word2
    :1,$s/word1/word2/gc    |   在第1,最后一行之间搜索word1,并将其替代为word2,替代需要确认


    - 删除、复制与粘贴
     
    命令                    | 描述
    ------------------------|------------------------------------------
    x,X                     |   x为向后删除一个字符,X为向前删除一个字符
    nx                      |   向后删除n个字符
    dd                      |   删除光标所在行
    ndd                     |   向下删除n行
    d1G                     |   删除光标所在行到第一行的所有内容
    dG                      |   删除光标所在行到最后一行的所有内容
    d$                      |   删除光标所在处到该行行尾的所有内容
    d0                      |   删除光标所在处之前的内容
    yy                      |   复制光标所在行
    nyy                     |   向下复制n行
    y1G                     |   复制光标所在行到第一行的所有内容
    yG                      |   复制光标所在行到最后一行的所有内容
    y$                      |   复制光标所在处到该行行尾的所有内容
    y0                      |   复制光标所在处之前的内容
    p,P                     |   p为在下一行粘贴复制的内容,P为在上一行
    J                       |   将光标所在行与下一行合并为同一行
    c                       |
    u                       |   撤销前一个动作
    ctrl+r                  |   重做上一个动作
    .                       |   重复前一个动作

    - 模式切换
     
    命令                    | 描述
    ------------------------|------------------------------------------
    i,I                     |   i为在光标所在处插入,I为在光标所在行的第一个非空字符处插入
    a,A                     |   a为在光标所在处的下一个字符串插入,A为在光标所在行的最后一个字符串插入
    o,O                     |   o为在光标所在行的下一行插入新行,O为光标所在行的上一行插入新行
    r,R                     |   r为取代光标所在处的字符一次,R会一直取代光标所在处的字符直到ESC
    esc                     |   退出编辑模式,回到一般指令模式
     
    - 保存与离开
     
    命令                    | 描述
    ------------------------|------------------------------------------
    :w,:w!                  |   :w为保存,:w!为强制保存
    :q,:q!                  |   :q为离开,:q!为强制离开
    :wq,:wq!                |   :wq为保存后离开,:wq!为强制保存离开
    ZZ                      |   文档未改变,则不保存离开。有改变,则保存离开
    :w filename             |   另存为 
    :r filename             |   将filename的内容添加到光标所在行的后面
    :n1,n2 w filename       |   将n1到n2行的内容保存到filename中 
    :! command              |   暂时离开vi,执行command命令

    - 设置环境变量
     
    命令                    | 描述
    ------------------------|------------------------------------------
    :set nu                 |   显示行号
    :set nonu               |   不显示行号


    ----------

  • 相关阅读:
    如何操作3D中的摄像机
    软件开发的未来,是MDA/MDD/面向模式/Plugin IDE吗?[转]
    Hibernate3一个不错的入门介绍
    C#中的== Equals 与 Java 的== Euqals
    The Attributes property of a ListItem control only works within an HtmlSelect control
    WebWork 与 Struts
    会计基本流程
    常用 js 函数
    SQL中的sysobjects与syscolumns
    一个Struts2的的辅助工具
  • 原文地址:https://www.cnblogs.com/jinjiangongzuoshi/p/4972654.html
Copyright © 2020-2023  润新知