vi编辑器的使用


==========================
vi编辑器--visual interface[可视化接口]
==========================
1、命令行下的一种编辑器

+++++++++++
2、vi操作模式
+++++++++++
    Command Mode    命令模式
    Insert Mode        输入模式
    Last Line Mode    末行模式

例题:
    在当前目录下编辑1.txt
    1> vi 文件名 (当使用vi打开一个不存在的文件,会自动创建)
        【使用以上命令之后,属于命令模式】
    2>按"i"进入到输入模式,开始输入内容
    3>按esc 表示:切换到命令模式  -->然后按":"  进入到 末行模式
    4>末行模式向输入 wq  即可完成保存并退出
        w:表示写入
        q:表示退出
    
总结:
    命令模式---->输入模式 "i"
    输入模式---->命令模式"esc"
    命令模式---->末行模式 ":"
    输入模式和末行模式不能切换

注意:
    在命令模式下 set nu [vi会显示行号]

++++++++++++++++++
3、vi命令的格式
++++++++++++++++++
vi filename:
    编辑某个文件

vi + filename:
    打开某个文件,同时光标定位到最后一行
    (默认情况下:使用vi打开文件时,光标定位当上一次最后的编辑的行数)

vi +n filename:
    打开文件同时将光标定位到第n行

vi +/string filename:
    ①打开文件同时将光标定位到指定的string行上
    ②同时string会高亮[如果有多个string,则都高亮,并且光标定位到第一个string行上]
    ③当再次这样进入编辑时:
        vi filename;
        之前查询过的string还是会高亮
        如果不想高亮,则可以这样解决:
            1>cd ~:进入到自己的家
            2>ls: 查看当前文件; 会有一个【.viminfo】文件,此文件记录了之前输入过的所有命令
            3>rm -rf .viminfo:删除该文件
            4>vi filename:此时进入,就会发现之前查询过的string就不会高亮了

vi filename1 filename2:
    n:切换到下一文件
    prev:切换到上一文件
    ①编辑多个文件
    ②步骤:
        1>vi filename1 filename2 此时会编辑filename1[命令模式]
        2>i进入输入模式; 进行对 filename1 的编辑
        3>esc:进入命令模式
        4>: 进入如末行模式
        5>w :此时只要按w,写入filename1,不退出编辑器
        6>n:切花值下一文件,此时为命令模式[重复2->5]
        7>wq:写入filename2,并退出编辑器

================
4、快捷键
================
dd:删除光标定位的行
yy:赋值光标定位的行
p:复制单行到光标处
:q!  强制退出-->末行模式

===============
快速定位到哪行
===============
需要在末行模式
:set nu  显示行号
: n   定位到第n行
:D  定位到最后一行

原文地址:https://www.cnblogs.com/qintangtao/p/2779917.html