Vi简单学习

【序】
之所以,简单学习,是在于偶尔使用该工具,应该知道怎么录入、修改、删除、保存等。
有些vi下面看不到模式状态,建议多使用Esc,进入指令模式,再切进到输入模式~

【正文】
Vi是Unix世界里极为普遍的全萤幕文书编辑器。学习vi的基本操作还是有好处,让你在各个不同的机器上得心应手。

Vi的原意是 "Visual",它是一个立即反应的编辑程式,也就是说可以立刻看到操作结果。

Vi有两种模式,输入模式以及指令模式。
    输入模式即是用来输入文字资料,
    指令模式则是用来下达一些编排文件、存档、以及离开vi等等的操作指令。
    当执行vi後,会先进入指令模式,此时输入的任何字元都视为指令。

要切换到指令模式下则是用[ESC]键

常用指令:
进入输入模式{a,A,i,I,o,O}

方向键:
在指令模式下移动游标的基本指令是h,j,k,l 。

编辑命令:
    x 删除游标所在字元。

    dd 删除游标所在的列。

    r 修改游标所在字元,r 後接著要修正的字元。

    R 进入取代状态,新增资料会覆盖原先资料,直到按[ESC]回到指令模式下为止。

    s 删除游标所在字元,并进入输入模式。

    S 删除游标所在的列,并进入输入模式。

    有个很好用的指令u可以恢复被删除的资料,而U指令则可以恢复游标所在列的所有改变。这与某些电脑上的[Undo]按键功能相同。
   
档案指令

    档案指令多以:开头,跟编辑指令有点区别。例如前面提到结束编辑的指令就是:q

    q 结束编辑(quit)

    如果不想存档而要放弃编辑过的档案则用 :q! 强制离开。

    w 存档(write)

    其後可加所要存档的档名。可以将档案指令合在一起,例如 :wq 即存档後离开。

    zz 功能与 :wq 相同。
   
【遇到这么一个问题:如何输入tab】
Ps:杯具,前端时间使用vi在gnustep不能输入tab,why? 再次在gnustep实践了下,找到原因,由于不知道当前模式是什么,有时候以为是输入模式,按tab,肯定无效。现在为了输入tab,实在不知道模式,就先esc,再进入输入模式,再按tab来输入。其实大部分时候都可以这样做,当你迷茫vi当前模式状态时

各个环境下的终端使用情况:
mac 终端中使用vi

【tab】对应了tab,长度8个Byte

在gnustep环境下,vi对应tab长度8个Byte。

无论生活、还是技术,一切都不断的学习和更新~~~努力~
原文地址:https://www.cnblogs.com/GoGoagg/p/2041891.html