VIM-上古神器

作者: 运维阿文 | 来源:发表于2017-09-01 20:18 被阅读36次

    vim命令

    VIM是linux系统上最著名的文本/代码编辑器,也是早期的vi编辑器的加强版,它最大的特色就是完全使用键盘命令进行编辑,脱离了鼠标操作虽然使得入门变得困难,但上手之后键盘流的各种巧妙组合操作却能带来极大幅的效率提升.
    在linux操作系统下面一般会使用VIM编辑器来编写代码,因为我们的服务器一般不会开启图形化界面给大家来使用.

    VIM模式

    • VIM主要的模式有3个
    1. Normal Mode: 字面意思就是普通模式,VIM在启动后就是在普通模式,在这个模式下你的操作是命令VIM帮助你完成某个动作,比如你在键盘上单击h安装,就等同于按下方向键"<"光标向左移一个字符,一般是查看文档

    2. Insert Mode: 插入模式,在这个模式下我们可以对文本进行增删改来操作

    3. Visual Mode: 可视模式,在这个模式下可以选中某个区域来做一些操作,这个模式可以视为局部的Normal Mode

    • 模式的切换
      Normal mode 切换到 Insert mode:
    i:进入Insert mode,并且让光标处于当前字符之前
    I:进入Insert mode,并且光标处于当前行的第一个非空字符前
    a:进入Insert mode,并且光标处于当前字符之后
    A:进入Insert mode, 并且光标处于当前行尾
    o:进入Insert mode,并在当前行后新起一行,光标位于新行
    O:进入Insert mode,并在当前行上边插入新行,光标位于新行
    s:删除当前字符,然后进入Insert mode
    S:删除当前行,然后进入Insert mode
    

    Insert mode 切换到Normal mode:<ESC>按键
    Normal mode 切换到Visual mode:

    v:进入Visual mode,选取以字符为单位
    V:进入Visual mode,选取以行为单位
    

    Visual mode 切换到Normal mode:<ESC>按键


    VIM模式.png
    • 末行模式
      末行模式也称ex转义模式。在命令模式下,用户按“:”键即可进入末行模式下,此时Vi会在显示窗口的最后一行(通常也是屏幕的最后一行)显示一个“:”作为末行模式的提示符,等待用户输入命令。多数文件管理命令都是在此模式下执行的(如把编辑缓冲区的内容写到文件中等)。末行命令执行完后,Vi自动回到命令模式。例如:
    vim退出.png

    VIM基本操作

    普通模式

    移动光标
    h: 左移 
    
    j: 下移 
    
    k: 上移 
    
    l: 右移
    
    M: 光标移动到中间行 
    
    L: 光标移动到屏幕最后一行行首 
    
    G: 移动到指定行,行号 -G
    
    w: 向后一次移动一个字 
    
    b: 向前一次移动一个字
    
    {: 按段移动,上移 
    
    }: 按段移动,下移
    
    Ctr-d: 向下翻半屏 
    
    Ctr-u: 向上翻半屏
    
    Ctr-f: 向下翻一屏 
    
    Ctr-b: 向上翻一屏
    
    gg: 光标移动文件开头 
    
    G: 光标移动到文件末尾
    
    • 删除命令
    x: 删除光标后一个字符,相当于 Del 
    
    X: 删除光标前一个字符,相当于 Backspace
    
    dd: 删除光标所在行,n dd 删除指定的行数 D: 删除光标后本行所有内容,包含光标所在字符 
    
    d0: 删除光标前本行所有内容,不包含光标所在字符
    
    dw: 删除光标开始位置的字,包含光标所在字符
    
    • 撤销命令
    u: 一步一步撤销 
    Ctr-r: 反撤销
    
    • 重复命令
      .:重复上一次操作命令

    • 文本行移动

    >>: 文本行右移 
    <<: 文本行左移
    
    • 复制粘贴
    yy: 复制当前行,n yy 复制 n 行 
    p: 在光标所在位置向下新开辟一行,粘贴
    

    可视模式

    v: 按字符移动,选中文本 
    
    V: 按行移动,选中文本可视模式可以配合 d, y, >>, << 实现对文本块的删除,复制,左右移动
    
    • 替换操作
    r: 替换当前字符 
    R: 替换当前行光标后的字符
    
    • 查找命令
    /: str查找
    n: 下一个
    N:上一个
    
    • 替换命令
    把abc全部替换成123
    末行模式下,将光标所在行的abc替换成123
    :%s/abc/123/g
    
    末行模式下,将第一行至第10行之间的abc替换成123
    :1, 10s/abc/123/g
    
    • vim里执行 shell 下命令
      末行模式里输入!,后面跟命令

    相关文章

      网友评论

        本文标题:VIM-上古神器

        本文链接:https://www.haomeiwen.com/subject/jxvhjxtx.html