zoukankan      html  css  js  c++  java
  • shell-vi

    1、插入模式

    i :从目前光标所在之处插入字符
    a :从目前光标所在位置的下一个字符处开始插入字符
    o :插入新的一行,从行首开始输入字符

    2、底线模式

    在插入模式下按Esc键进入命令行模式后,再输入冒号(:)进入底线模式

    3、光标移动

    GG:光标移动到文件的最后一行按
    gg:光标移动到文件的开头第一行
    $:光标移动到所在行的行尾
    ^:光标移动到所在行的行首

    使用键盘的方向键完成光标上下左右移动

    4、删除

    x:每按一次删除光标所在位置的字符
    3x :删除包含光标所在位置后的3个字符
    dd :删除光标所在的行
    3dd:删除光标所在往下的3行,包括光标所在的行

    5、复制

    yw :复制光标所在处到字尾的内容
    yy :复制光标所在的行
    p :粘贴到光标所在的下一行 

    6、替换、撤销

    r : 取代光标所在处的字符
    R :连续取代字符直到按Esc为止
    u :撤销上一步的操作,可以连续按u,撤销多个操作

    7、查找、定位

    :set nu #显示文件每一行的行号
    :set nonu #不显示文件的行号
    :set nowrap #不折行
    :输入数字 #比如:5,再按回车,将跳到相应数字的行数,第5行
    /关键字 #从当前光标开始往下查找关键字(第一个),按n, 继续往下查找,按N继续往上查找

    8、字符替换

    :1,$s/string1/string2/g #整篇文章中string1替换成string2
    :1,$s/string1/string2 #当一行出现多个string1,只替换每行的第一个string1
    :1,20s/apple/pear/g #指定区间替换,将1至20行的所有apple替换成pear

    9、保存

    :30,50 w filename #摘取文件某一段(30至50行)保存成另一个文件
    :w filename #将文件保存为filename
    :wq #保存文件并退出
    :q #退出(若文件修改过,则会报错,不能直接退出)
    :q! #强制退出,不保存修改的内容
    :wq! #强制退出,并且保存修改的内容(如果当前文件被其他用户编辑,也强制修改该文件,并退出)

    10、执行

    chmod 777 test.sh    #给test.sh文件 添加可执行权限 

    11、vi实例

    如果vi正在编辑的过程中突然断电,那么之前编辑中的文件该怎么恢复呢?
    >>打开一个文件,vi会生成一个暂存档(.swp)以备不测。如果非正常退出,再次打开文件时,会有一些提示。
    >>重新打开一个shell终端,
    查看当前工作路径下的隐藏文件:ls -a
    恢复文件:vi -r .filename
    删除暂存档: rm -f .filename.swp

  • 相关阅读:
    单例模式
    HashSet、LinkedHashSet、SortedSet、TreeSet
    ArrayList、LinkedList、CopyOnWriteArrayList
    HashMap、Hashtable、LinkedHashMap
    andrew ng machine learning week8 非监督学习
    andrew ng machine learning week7 支持向量机
    andrew ng machine learning week6 机器学习算法理论
    andrew ng machine learning week5 神经网络
    andrew ng machine learning week4 神经网络
    vue组件监听属性变化watch方法报[Vue warn]: Method "watch" has type "object" in the component definition. Did you reference the function correctly?
  • 原文地址:https://www.cnblogs.com/lilyo/p/11912073.html
Copyright © 2011-2022 走看看