zoukankan      html  css  js  c++  java
  • Linux vi 命令详解

    vi共分为三种模式:分别是一般模式,编辑模式与命令行模式

    一般模式:以vi打开一个文件就直接了一般模式(这是默认的模式)

    编辑模式:在指令模式下输入的按键“i, I, o, O, a, A, r, R”,vi即认为是在当前位置插入字符。而在输入模式下,vi则把输入的按键当作插入的字符来处理。指令模式切换到输入模式只需键入相应的输入命令即可(如a,A),而要从输入模式切换到指令模式,则需在输入模式下键入ESC键,如果不晓得现在是处于什么模式,可以多按几次[ESC],vi跳转到指令模式。

    1. 命令模式:

    ) 光标移至句尾
    ( 光标移至句首
    } 光标移至段落开头
    { 光标移至段落结尾 
    

    2. vi移动光标的方法:

    G:移动到这个文件的最后一行(常用)
    nG:n为数字。移动到这个文件的第n行。
    gg:光标移动到第一行,相当于1G
    N[enter]:n为数字。光标向下移动n行
    N+[方向键上,下,左,右]:表示向那个方向移动行或字符
    
    到文件第一行
    :1
    到文件尾,利用正则里的语义
    :$
    
    另一些表达
    [[ 开头
    ]] 结尾
    [[^  开头第一个字符
    ]]$  结尾最后一个字符
    

    3.vi查找与替换

    /word 向下寻找一个名称word的字符
    ?word 向上寻找一个字符串名称为word的字符串
    n: 这个n是英文键,代表重复前一个查找的操作。也就是查找下一个
    N: 这个N是英文键,与n刚好相反,为反向进行前一个查找操作。查找上一个
    

     vi高级查找与替换

    :n1,n2s/word1/word2/g n1与n2为数字,在第n1行与n2行之间寻找word1,并将该字符串替换成word2
    :1,$s/word1/word2/g 从第一行到最后一行查找word1,并将该字符串替换成word2
    :1,$s/word1/word2/gc 从第一行到最后一行查找word1,并将该字符串替换成word2。替换之前显示提示字符给用户确认confirm
    

    4. vi显示行号/取消显示

    显示行号
    :set nu
    
    取消行号显示
    :set nonu
    

    5. vi删除命令

    dd: 删除光标所在的哪一行(常用)
    ndd: n为数字。删除光标所在的向下n行,例如20dd删除光标以下20行(常用)
    d1G:删除光标所在到第一行的所有数据
    dG: 删除冲贯标所在到最后一行的所有数据
    d$: 删除光标所在到第一行的所有数据
    d0: 那个数字的0,删除冲光标所在处到改行的最前面的一个字符
    x或X:删除一个字符,x删除光标后的,而X删除光标前的
    

    6. vi复制命令 

    yy: 复制光标所在的那一行(常用)
    nyy:n为数字,复制光标所在的向下n行,例如20yy
    y1G:复制光标所在行到第一行的所有数据
    yG: 复制光标所在行到最后一行的所有数据
    y0: 复制光标所在的那个子都到该行行首的所有数据
    y$:复制光标所在的那个字符到该行行尾的所有数据
    

    7. vi黏贴命令

    p: p为将已复制的数据在光标下一行黏贴
    P: 大写P则为黏贴在光标上一行
    

    8. vi撤销命令:

    u: 撤销    (常用)
    Ctrl + r: 撤销的撤销    (常用)
    

     9. vi小数点.

    vi小数点.表示重复前一个操作的意思。重复删除,重复黏贴等操作,按下小数点"."
    

    10.vim 的块选择功能(Visual Block)

    v 字符选择,会将光标经过的地方反白选择
    V 行选择,会将光标经过的行反白选择
    [ctrl]+v  块选择,可以用长方形的方式选择数据
    配合命令:
    y 将反白的地方复制起来
    d 将反白的地方删除
    

    11. vim 多窗口功能

    :sp [filename] 打开新窗口,如果有家filename,表示在新窗口打开一个新文件
    [ctrl]+w 按住ctrl按键,按一下w键,会切换一个文档,再按一下切换下一个(貌似方向键没有用)
    
    博主原创,转载请标明出处!
    联系方式: 微信:corolla_zhaojd
    Email: zhaojiandongzju@gmail.com

  • 相关阅读:
    word设置的密码忘了怎么办?
    Navicat Report Viewer 设置 HTTP 的方法
    如何处理Navicat Report Viewer 报表
    excel密码忘记了怎么办
    Beyond Compare文本比较搜索功能详解
    Popular Cows POJ
    Problem B. Harvest of Apples HDU
    网络流模型整理
    The Shortest Statement CodeForces
    Vasya and Multisets CodeForces
  • 原文地址:https://www.cnblogs.com/oldtrafford/p/3682015.html
Copyright © 2011-2022 走看看