• 非常实用的vi命令,基本都是常用的


    文本编辑

    i        # 在光标前插入
    I        # 在当前行首插入
    a        # 在光标后插入
    A        # 在当前行尾插入
    o        # 在当前行之下新开一行
    O        # 在当前行之上新开一行
    r        # 替换当前字符(replace,按下r之后,光标不动,输入一个字符直接替换)
    R        # 替换当前字符及其后的字符,直至按ESC键(按下R后,输入的字符会依次替换后续字符)

    查找、替换

    /pattern        # pattern(样式)指代的是要查找的内容,将向后查找与指定内容匹配的第一样式
    /               # 重复上一次查找,在文件中查找下一个匹配样式
    ?pattern        # pattern(样式)指代的是要查找的内容,将向前查找与指定内容匹配的第一样式
    ?               # 重复上一次查找,在文件中查找与上一次查找内容匹配的样式
    %               # 把当前光标移至匹配的圆括号或方括号(对程序员来说,该命令非常有用)
    :s/pattern1/pattern2    # 用pattern2替换当前行中与pattern1匹配的每个内容
    :%s/pattern1/pattern2   # 用pattern2替换整个文件中与pattern1匹配的每个内容

    文件操作

    ZZ            # 保存对当前文件的更改,然后退出vi
    :wq           # 保存对当前文件的更改,然后退出vi(同ZZ)
    :w            # 保存对当前文件的更改
    :w!           # 保存对当前文件的更改,如果有同名文件存在的话,就改写它
    :q            # 退出vi(如果有未保存的更改,vi将发出抱怨,并"拒绝"退出)
    :q!           # 退出vi,即使还有尚未保存的更改。所有未保存的更改将被丢失
    :e filename   # 把指定文件载入vi进行编辑,如果指定文件不存在,将创建一个新文件
    :e!           # 丢失所有更改,并从硬盘中重载已保存的文件(reload)

    滚动屏幕

    Ctrl+u        # 向上滚动半屏(up)
    Ctrl+d        # 向下滚动半屏(down)
    Ctrl+f        # 向前滚动全屏(forward)
    Ctrl+b        # 向后滚动全屏(backward)
    Ctrl+e        # 向下滚动一行(想不出了)
    Ctrl+y        # 向上滚动一行(同样想不出)

    常用命令

    :set nu         # 显示行号
    dd              # 删除当前行
    d1G             # 删除从光标所在行开始,到第一行的所有行
    dG              # 删除从光标所在行开始,到最后一行的所有行
    
    yy              # 复制当前行
    y1G             # 复制从光标所在行开始,到第一行的所有行
    yG              # 复制从光标所在行开始,到最后一行的所有行
    
    p               # 粘贴
    r               # 替换所选
    cc              # 替换当前行
    
    u               # 撤销
    Ctrl+r          # 重做上一个操作
    
    /任意内容        # 查找命令
    n               # 向下查找
    N               # 向上查找
  • 相关阅读:
    PostgreSQL 9.6.2版本在centOS下的安装和配置
    postgreSQL 创建user表时引发的表名大写与双引号问题
    Go JSON嵌套解析失败
    面试杂谈:面试程序员时都应该考察些什么?<转>
    Golang bash脚本自动创建一个go工程
    iOS Debug心得 (持续更新)
    iOS 上传APP到AppStore 卡在 Authenticating with the iTunes store 提示
    iOS 应用打包 设备兼容性问题(Build Active Architecture Only)
    Go 使用自定义包(package)
    Go 连接PostgreSQL数据库
  • 原文地址:https://www.cnblogs.com/inzens/p/6207446.html
Copyright © 2020-2023  润新知