blog icon indicating copy to clipboard operation
blog copied to clipboard

Vi 或 Vim 基础

Open qingquan-li opened this issue 7 years ago • 0 comments

简单的来说, vi是老式的文书处理器,不过功能已经很齐全了,但是还是有可以进步的地方。vim则可以说是程式开发者的一项很好用的工具,可以将vim视作vi的进阶版本,vim可以用颜色或底线等方式来显示一些特殊的资讯,支援正规表示法的搜寻架构、多档案编辑、区块复制等等。

Vi 的使用

基本上vi共分为三种模式,分别是『一般指令模式』、『编辑模式』与『指令列命令模式』。这三种模式的作用分别是:

  • 一般指令模式(command mode) 以vi (或vim)打开一个档案就直接进入一般指令模式了(这是预设的模式,也简称为一般模式)。在这个模式中, 你可以使用『上下左右』按键来移动游标,你可以使用『删除字元』或『删除整列』来处理档案内容, 也可以使用『复制、贴上』来处理你的文件资料。

  • 编辑模式(insert mode) 在一般指令模式中可以进行删除、复制、贴上等等的动作,但是却无法编辑文件内容的!要等到你按下『i, I, o, O, a, A, r, R』等任何一个字母之后才会进入编辑模式。注意了!通常在Linux中,按下这些按键时,在画面的左下方会出现『INSERT或REPLACE』的字样,此时才可以进行编辑。而如果要回到一般指令模式时,则必须要按下『Esc』这个按键即可退出编辑模式。

  • 指令列命令模式(command-line mode) 在一般模式当中,输入『 : / ?』三个中的任何一个按钮,就可以将游标移动到最底下那一列。在这个模式当中,可以提供你『搜寻资料』的动作,而读取、存档、大量取代字元、离开vi 、显示行号等等的动作则是在此模式中达成的! 例如:存档(write) 并离开(quit) 的指令很简单,输入『:wq』即可存档离开!(注意了,按下 : 该游标就会移动到最底下一列去!) 这时你在提示字元后面输入『 ls -l 』即可看到我们刚刚建立的档案啦

简单的说,我们可以将这三个模式想成底下的图示来表示: centos7_vi-mode

注:如果你开启的档案是旧档(已经存在的档案),最底下一列即状态显示列会显示文档状态信息,如 Mac 环境中显示的 "CONTRIBUTING.md" 3L, 32C 代表 CONTRIBUTING.md 中有 3 行,32个字元(字符)。

转载(有变更):http://linux.vbird.org/linux_basic/0310vi.php

qingquan-li avatar Sep 09 '17 14:09 qingquan-li