嵌入式学习-----vi编辑器的使用一

vi编辑器三种模式的使用

1.命令行模式

1.1 什么叫命令行模式呢?
用户进入编辑器默认处于的模式,且在此时,是不能进行代码的输入
例:

vi com.c 创建一个com.c文件
按回车键进入编辑页面,此时是属于命令行模式的

在这里插入图片描述
在这里插入图片描述

1.2 命令行常见操作
我会一一为大家演示一下命令

yy:复制代码
nyy:从光标位置复制n行代码
p:粘贴在光标下一行
P:粘贴在光标上一行
dd:从光标位置剪切代码
ndd:从光标位置剪切n行代码
u:撤销
ctrl+r:反向撤销(即恢复刚刚撤销的内容)
x:从光标位置进行删除

我现在要复制头文件#include<stdio.h>
把光标移到第7行,然后按两下yy;
光标还是在第7行,按小写的p即可完成粘贴
如果要撤销按u

yy:复制代码
粘贴p,粘在光标的下一行
撤销按u

在这里插入图片描述
在这里插入图片描述

这时候我们要把第8行的内容撤销掉

一是按u撤销
而是按dd撤销这一行
注意:依然是从光标位置开始

在这里插入图片描述
如果我们要复制第7,8行的代码
光标移到第7行输入2yy
粘贴在第9行的上面,光标移到第9行的开头
输入P

复制n行代码nyy
粘贴到光标的上面P
剪贴n行ndd

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
现在我们从第8行开始剪切3行,光标先移动到第8行,然后输出3dd,
第8,9,10行的内容就会消失。
在这里插入图片描述
如果我们要删除头文件#include<stdio.h>

x单个字符进行删除(从光标位置开始)

在这里插入图片描述

2.编辑模式

2.1什么叫编辑模式呢?
能够在文件下,进行代码的输入,删除等一系列操作。
2.2怎么从命令行模式进入编辑模式呢?

在命令行输入a/i/o,区别在于光标的位置不一样。
A:将光标移到行尾
I:直接将光标进入行首
a:从光标的下一个位置输入
i:从光标位置输入
O:是在上面加空行
o:是在下面加空行
不用按a或者i,换行后直接进入插入模式

2,3怎么从编辑模式退出进入命令行模式呢?

按下键盘上Esc键,即进入命令行模式

在这里插入图片描述

按下A后,底行显示插入

在这里插入图片描述

退出编辑模式,按键盘上的Esc即进入到命令行模式

在这里插入图片描述

I:直接将光标进入行首

此时光标在;的位置上
按下I会去哪里呢?

在这里插入图片描述
在这里插入图片描述

a:从光标的下一个位置输入
退出编辑模式按Esc

在这里插入图片描述
在这里插入图片描述

i:从光标位置输入
退出编辑模式按Esc

在这里插入图片描述
在这里插入图片描述

O:是在上面加空行
o:是在下面加空行
注意:直接在命令行模式输入,O/o即可进入编辑模式

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3.底行模式

3.1什么叫底行模式呢?

按ESC退回到命令行模式,输入冒号,进入底行模式

3.2底行模式常用的命令

在底行模式输入
:q!--强制不保存退出
:w--保存
:wq--保存退出--与:x作用一样
:q--退出


! [date/pwd]查看时间和当前编译文件的路径
:w file另存为file给出的文件名,不退出(类似于 cp a b做一个备份)
:r file 读入文件的内容

:vsp file 编辑另外一个名叫file的文件(对照)
:set mouse=a 使光标能随鼠标点击移动
:set mouse=v能在vi内使用右键复制的功能
:N到第N行
:set nu加行号
:set nonu 不加行号

:q!强制不保存退出
①我们重新创建一个del.c的文件
②按Esc后
③再按冒号q!
④用ls查看目录最后的结果,结果目录下面没有del.c的文件
在这里插入图片描述在这里插入图片描述

:w–保存但是不退出
①先vi del.c的文件
②按Esc进入命令行模式
③底行模式输入:w
④界面还是会停留在编辑页面
显示del.c文件已写入
在这里插入图片描述

:wq–保存退出-
①del.c的已写入的文件后
②按:(冒号)输入wq
:wq
③就会退出编辑界面
④用ls查看就会有del.c的文件
在这里插入图片描述

:!date查看时间
:!pwd查看路径
在这里插入图片描述
在这里插入图片描述

:w file另存为file给出的文件名,不退出(类似于 cp a b做一个备份)
现在我们另存给file.c文件
通过ls命令查看路径下是否有file.c文件
在这里插入图片描述
在这里插入图片描述

:vsp file 编辑另外一个名叫file的文件(对照)
现在我们对照file.c和del.c的文件
vi del.c的文件在底行模式下输入:vsp file.c
在这里插入图片描述
在这里插入图片描述

这些也是同样的道理:在底行模式下输入
这里就不在一一解释了
:set mouse=a 使光标能随鼠标点击移动
:set mouse=v能在vi内使用右键复制的功能
:N到第N行
:set nu加行号
:set nonu 不加行号

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

最没脑子

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值