vi 的基本使用

 我在日常的学习中,一个基本并且功能强大且使用简单的编辑器是少不了的。在我的不断探索和摸索中,发现了一个功能不错的编辑器以供大家交流使用。下面这些是我是我用电鱼电子SAIL-AM335X实现的步骤。

vi,Unix&Linux下最基本的编辑器,功能强大使用简单,是用户的必备利器。
模式:

  1. 命令模式(默认,通过命令对文件内容进行编辑)
    vi //在当前目录创建空文件
    vi filename //打开指定文件
    vi -o|O f1 f2 //打开多个文件,o|O表示水平|垂直
    通过vi打开文件后自动进入命令模式,此模式下所有输入都是命令
  2. 插入模式(像windows中的普通编辑器一样使用)
    命令模式下按iaoIAO任一键进入插入模式,esc回到命令模式
    i在光标前插入文本
    I在光标所在行前插入
    a在光标后插入文本
    A在光标所在行未插入
    o在光标所在行下插入新行
    O在光标所在行上插入新行
  3. 编辑模式(通过命令对文件或文件内容进行编辑)
    命令模式下按“:”进入编辑模式,esc或enter执行操作后回到命令
  4. 视图模式(属于命令模式)
    vV进入视图模式,执行字符选中
    例:按"H"或"L"移动光标选中字符,通过yd进行复制剪切
    常用命令
    【定位命令】
    hjkl:光标[左下上右]移动,同方向键
    0:移至行首
    ^:非空白行头
    $:移至行尾
    Enter:移至下行首
    H:移至屏幕上端
    M:移至屏幕中央
    L:移至屏幕下端
    C-F:下一页(C-F表示Ctrl+Shift+F)
    C-B:上一页
    gg:移至第一行
    G:移至文件末尾
    [n]G:移至文件第n行
    :n移至文件第n行
    【删除命令】
    x:删除光标处字符
    nx:光标所在处后n个字符
    X:删除光标前字符
    dd:剪切光标所在行
    ndd:剪切当前行以下n行
    dG:删除光标所在行到文件末尾
    D:删除光标所在处到行尾
    :n1,n2d 删除n1行到n2行之间的内容
    【复制&粘贴】
    yy/Y:复制当前行
    nyy,nY:复制当前行下边的n行
    nyh,nyl:复制光标前/后的n个字符
    p,P:将已经选择复制或被删除的行粘贴到当前行下或行上
    搜索和替换
    r:取代光标所在处字符R:从光标所在处开始替换字符,至到按esc结束
    s:替换(删除)光标所在处字符,并进入文本输入方式
    S:替换(删除)光标所在行,按esc结束
    :/string //从上向下搜索字符串
    :?string //从下向上搜索字符串
    通过按键n移到下一个结果:
    n
    //时向下,?时向上搜索
    N
    //时向上,?时向下搜索
    :%s/old/new/g //把所有old替换为new,g不会询问,c会询问虽否替换
    :%s/old//g //把所有old删除
    :n1,n2s/old/new/g //在一定范围内替换指定字符串
    例:连续行注释
    :n1,n2s/^/#/g //^表示行首
    :n1,n2s/^/#//g //将行首’#'替换为空,即删除
    :n1,n2s/^g //转义符,使用"//“注释
    替换:ab asmmail samlee@lampbrother.net//输入a时回车或空格,vi自动换成b
    unab//取消
    【撤消】
    u:撤消上一步操作(最多可撤消到文件打开时)。
    U:撤消当前行的所有操作。
    ctrl+r:取消撤消
    【保存退出】
    :w保存
    :w newfilename另存为
    :w!强制保存
    //!只针对文件所有者和管理员
    :wq保存&退出 //快捷键ZZ
    :q退出
    :q!强制退出
    :wq!强制保存&退出
    :x保存退出
    :x!强制保存&退出
    【其它】
    :set nu/number //设置行号
    :set nonu //取消行号
    :set ic //区分大小写
    :set noic //取消区分大小写
    :vsp //垂直分窗
    :sp //水平分窗
    C-W p/w //切换到上/下一个窗口
    :r filename把指定文件内容导入进来(光标所在位置)。
    :! cmd运行cmd命令
    :r !date将命令结果导入到文件中
    :map 快捷键 触发命令
    map ^P I# //使用ctrl+p注释本行(使用ctrl+v+[p]输入”1")
    map ^B 0x //取消注释
    unmap
    vi配置:
    通过vi配置文件设置vi默认环境。
    例:设置vi默认显示行号
    cd ~
    //回到当前账户家目录下
    vi .vimrc
    //vi配置文件,默认不存在,家目录中,针对当前用
    i//进入编辑模式
    set nu
    map ^P I#
    ……
    :wq
    这些都是基于SELI-AM335所完成的。

  1. P ↩︎

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值