• vim命令行模式常见快捷方式


    普通模式下的快捷键

    快捷键   说明
      i    insert, 在光标所在处输入
      I    在当前光标所在行的行首输入
      a    append, 在光标所在处后面输入
      A    在当前光标所在行的行尾输入
      o    在当前光标所在行的下方打开一个新行
      O    在当前光标所在行的上方打开一个新行
      ZZ    保存退出
      ZQ    不保存退出

      :q   退出
      :q!    强制退出,丢弃做出的修改
      :wq   保存退出
      :x    保存退出

    命令模式
      di"   光标在" "之间,则删除" "之间的内容

      yi(   光标在()之间,则复制()之间的内容
      vi[   光标在[]之间,则选中[]之间的内容
      dtx   删除字符直到遇见光标之后的第一个 x 字符
      ytx   复制字符直到遇见光标之后的第一个 x 字符

    字符间跳转:
      h: 左 l: 右 j: 下 k: 上
      #COMMAND:跳转由#指定的个数的字符

    单词间跳转:
      w:下一个单词的词首
      e:当前或下一单词的词尾
      b:当前或前一个单词的词首
      #COMMAND:由#指定一次跳转的单词数

    当前页跳转:
      H:页首 M:页中间行 L:页底
      zt:将光标所在当前行移到屏幕顶端
      zz:将光标所在当前行移到屏幕中间
      zb:将光标所在当前行移到屏幕底端

    行首行尾跳转:
      ^: 跳转至行首的第一个非空白字符
      0: 跳转至行首
      $: 跳转至行尾

    行间移动:
      #G :扩展命令模式下:# 跳转至由#指定行
      G:最后一行
      1G, gg: 第一行

    句间移动:
      ):下一句(:上一句


    段落间移动:
      }:下一段{:上一段
      Ctrl+f: 向文件尾部翻一屏
      Ctrl+b: 向文件首部翻一屏
      Ctrl+d: 向文件尾部翻半屏
      Ctrl+u:向文件首部翻半屏


    字符编辑:
      x: 删除光标处的字符
      #x: 删除光标处起始的#个字符
      xp: 交换光标所在处的字符及其后面字符的位置
      ~:转换大小写
      J:删除当前行后的换行符


    替换命令(r, replace)
      r: 替换光标所在处的字符
      R:切换成REPLACE模式


    删除命令:
      d: 删除命令,可结合光标跳转字符,实现范围删除

    复制命令(y, yank):
      y: 复制,行为相似于d命令


    粘贴命令(p, paste):
      p:缓冲区存的如果为整行,则粘贴当前光标所在行的下方;否则,则粘贴至当前光标所在处的后面
      P:缓冲区存的如果为整行,则粘贴当前光标所在行的上方;否则,则粘贴至当前光标所在处的前面

    vim查找,替换的方法

    查找
      /PATTERN:从当前光标所在处向文件尾部查找
      ?PATTERN:从当前光标所在处向文件首部查找
      n:与命令同方向
      N:与命令反方向

    查找并替换
      s: 在扩展模式下完成查找替换操作
      格式:s/要查找的内容/替换为的内容/修饰符
      要查找的内容:可使用模式
      替换为的内容:不能使用模式,但可以使用1, 2, ...等后向引用符号;还可以使用“&”引用前面查找时查找到的整个内容

    修饰符:
      i: 忽略大小写
      g: 全局替换;默认情况下,每一行只替换第一次出现
      gc:全局替换,每次替换前询问

    查找替换中的分隔符/可替换为其它字符,例如
    s@/etc@/var@g
    s#/boot#/#i

    例:

    用vim,在/etc/default/grub倒数第二行末尾引号前面加入 xyz

    :%s/(.*CMD.*)"/1 xyz"/

    用vim,在/etc/fstab中给行首不是#开头的都加上#

    方法一
    :%s@(^[^#].*|^$)@#1@
    方法二
    :%s@^[^#]|^$@#&@

    用vim,去除#开头的行

    方法一
    :%s/^#.*
    //
    方法二 留下了空行
    :%s@^#.*$@@

     




  • 相关阅读:
    将font-size设置为 12px 以下,Chrome浏览器只能显示12px怎么办?
    如何创建.gitignore文件,忽略不必要提交的文件
    linux中将网速设置成10baseT/Half用于测试
    点击checkbox后满足条件才改变状态
    使用parted和kpartx 来对sdcard镜像进行分区调整,顺便用一下losetup
    linux添加具有root权限的管理员账号
    windows下获取系统的UUID
    pip修改镜像源
    linux中umount和mount
    mac安装brew
  • 原文地址:https://www.cnblogs.com/bj-mr-li/p/11153102.html
Copyright © 2020-2023  润新知