Vi编辑器

转自:http://write.blog.youkuaiyun.com/postedit/21166457

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

  • 一般模式
    以 vi 打开一个档案就直接进入一般模式了(这是默认的模式)。在这个模式中,你可以使用『上下左右』按键来移动光标,你可以使用『删除字符』或『删除整行』来处理档案内容,也可以使用『复制、贴上』来处理你的文件数据。

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

  • 指令列命令模式
    在一般模式当中,输入『: / ? 』三个中的任何一个按钮,就可以将光标移动到最底下那一行。在这个模式当中,可以提供你『搜寻资料』的动作,而读取、存盘、大量取代字符、离开vi 、显示行号等等的动作则是在此模式中达成的!

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


注意到上面的图示,你会发现一般模式可与编辑模式及指令列模式切换,但编辑模式与指令列模式之间不可互相切换喔!这非常重要啦!闲话不多说,我们底下以一个简单的例子来进行说明吧!


简易执行范例

如果你想要使用 vi 来建立一个名为 test.txt 的档案时,你可以这样做:

1. 使用 vi 进入一般模式;


直接输入『 vi 档名』就能够进入 vi 的一般模式了。请注意,记得 vi 后面一定要加档名,不管该档名存在与否!整个画面主要分为两部份,上半部与最底下一行两者可以视为独立的。如下图 2.1.1 所示,图中那个虚线是不存在的,鸟哥用来说明而已啦!上半部显示的是档案的实际内容,最底下一行则是状态显示列(如下图的[New File]信息),或者是命令下达列喔!

如果你开启的档案是旧档(已经存在的档案),则可能会出现如下的信息:


如上图 2.1.2 所示,箭头所指的那个『"/etc/man.config" 141L, 4617C』代表的是『档名为 /etc/man.conf,档案内有 141 行 以及具有 4617 个字符』的意思!那一行的内容并不是在档案内,而是 vi 显示一些信息的地方喔!此时是在一般模式的环境下啦。接下来开始来输入吧!

2. 按下 i 进入编辑模式,开始编辑文字

在一般模式之中,只要按下 i, o, a 等字符就可以进入编辑模式了!在编辑模式当中,你可以发现在左下角状态栏中会出现–INSERT- 的字样,那就是可以输入任意字符的提示啰!这个时候,键盘上除了[Esc] 这个按键之外,其他的按键都可以视作为一般的输入按钮了,所以你可以进行任何的编辑啰!


Tips:
在 vi 里面, [tab] 这个按钮所得到的结果与空格符所得到的结果是不一样的,特别强调一下!

3. 按下 [ESC] 按钮回到一般模式

好了,假设我已经按照上面的样式给他编辑完毕了,那么应该要如何退出呢?是的!没错!就是给他按下 [Esc] 这个按钮即可!马上你就会发现画面左下角的 – INSERT – 不见了!

4. 在一般模式中按下 :wq 储存后离开 vi

OK,我们要存档了,存盘并离开的指令很简单,输入『:wq』即可存档离开! (注意了,按下 : 该光标就会移动到最底下一行去!) 这时你在提示字符后面输入『 ls -l 』即可看到我们刚刚建立的 test.txt 档案啦!整个图示有点像底下这样:



按键说明
除了上面简易范例的 i, [Esc], :wq 之外,其实 vim 还有非常多的按键可以使用喔!在介绍之前还是要再次强调,vim 的三种模式只有一般模式可以与编辑、指令列模式切换,编辑模式与指令列模式之间并不能切换的!

第一部份:一般模式可用的按钮说明,光标移动、复制贴上、搜寻取代等




第二部份:一般模式切换到编辑模式的可用的按钮说明


第三部份:一般模式切换到指令列模式的可用的按钮说明


特别注意,在 vi 中,『数字』是很有意义的!数字通常代表重复做几次的意思!也有可能是代表去到第几个什么什么的意思。举例来说,要删除 50 行,则是用 『50dd』 对吧!数字加在动作之前~那我要向下移动 20 行呢?那就是『20j』或者是『20↓』即可。

OK!会这些指令就已经很厉害了,因为常用到的指令也只有不到一半!通常 vi的指令除了上面鸟哥注明的常用的几个外,其他是不用背的,你可以做一张简单的指令表在你的屏幕墙上,一有疑问可以马上的查询呦!这也是当初鸟哥使用 vim 的方法啦!




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值