
🔥艾莉丝努力练剑:个人主页
❄专栏传送门:《C语言》、《数据结构与算法》、C/C++干货分享&学习过程记录、Linux操作系统编程详解、笔试/面试常见算法:从基础到进阶
⭐️为天地立心,为生民立命,为往圣继绝学,为万世开太平
🎬艾莉丝的简介:

🎬艾莉丝的Linux专栏简介:

目录
[1 本文内容前情提示](#1 本文内容前情提示)
[2 vi / vim键盘图](#2 vi / vim键盘图)
[2 ~> vim编辑器](#2 ~> vim编辑器)
[2.1 vim是什么?](#2.1 vim是什么?)
[2.2 为什么?](#2.2 为什么?)
[2.3 怎么办?Linux文本编辑器:vi / vim使用](#2.3 怎么办?Linux文本编辑器:vi / vim使用)
[2.3.1 vi / vim的区别](#2.3.1 vi / vim的区别)
[2.3.2 没吃过猪肉先见见猪跑:用vim写一段代码](#2.3.2 没吃过猪肉先见见猪跑:用vim写一段代码)
[2.3.3 vim的退出问题(保存并且退出)](#2.3.3 vim的退出问题(保存并且退出))
[2.3.3.1 退出方式一:底行模式【:wq】](#2.3.3.1 退出方式一:底行模式【:wq】)
[2.3.3.2 退出方式二:默认模式【shift ZZ】](#2.3.3.2 退出方式二:默认模式【shift ZZ】)
[2.3.4 vim的模式问题:三种常用模式](#2.3.4 vim的模式问题:三种常用模式)
[2.3.5 vim的模式问题:三种常用模式的切换问题](#2.3.5 vim的模式问题:三种常用模式的切换问题)
[2.4 vim命令](#2.4 vim命令)
[2.4.0 光标知识补充](#2.4.0 光标知识补充)
[2.4.1 坐标定位命令:光标的上下定位](#2.4.1 坐标定位命令:光标的上下定位)
[2.4.2 坐标定位命令:光标的左右定位](#2.4.2 坐标定位命令:光标的左右定位)
[2.4.3 坐标定位命令:上下左右键](#2.4.3 坐标定位命令:上下左右键)
[2.4.4 编辑:复制](#2.4.4 编辑:复制)
[2.4.5 编辑:粘贴](#2.4.5 编辑:粘贴)
[2.4.6 编辑:撤销](#2.4.6 编辑:撤销)
[2.4.7 编辑:撤销错了还有后悔药吃!只要没退出vim!](#2.4.7 编辑:撤销错了还有后悔药吃!只要没退出vim!)
[2.4.8 编辑:剪切](#2.4.8 编辑:剪切)
[2.4.9 编辑:删除](#2.4.9 编辑:删除)
[2.4.10 视图模式:Ctrl + V](#2.4.10 视图模式:Ctrl + V)
前期提示
1 本文内容前情提示

2 vi / vim键盘图


2 ~> vim编辑器
2.1 vim是什么?

文本编辑器------只能用来写代码或者更改配置文件。

Linux黑屏下一般vim只是其中一种,不像是集成开发环境:VS。
2.2 为什么?


vi------usr / bin / vi
vim------usr / bin / vim
vi和vim的关系类似于C/C++的关系,vim就是增强版的vi,功能更加强大、更加完善。
2.3 怎么办?Linux文本编辑器:vi / vim使用
2.3.1 vi / vim的区别
两者同样都是多模式编辑器,vi / vim的区别------不同的是vim是vi的升级版本,它不仅兼容vi的所有指令,而且还有一些新的特性在里面。例如语法加亮,可视化操作不仅可以在终端运行,也可以运行于xwindow、macos、windows。
2.3.2 没吃过猪肉先见见猪跑:用vim写一段代码



cpp
#include<studio.h>
int main()
{
printf("hello world\n");
return 0;
}
这里艾莉丝演示一下怎么使用vim,顺便用cat打印一下------
bash
[root@VM-4-17-centos ccb]# ll
total 0
-rw-r--r-- 1 root root 0 Nov 6 11:30 code.c
[root@VM-4-17-centos ccb]# vim code.c
[root@VM-4-17-centos ccb]# vim code.c
[root@VM-4-17-centos ccb]# ll
total 4
-rw-r--r-- 1 root root 78 Nov 6 11:52 code.c
[root@VM-4-17-centos ccb]# cat code.c
#include<studio.h>
int main()
{
printf("hello world\n");
return 0;
}
最终我们就可以得到这样的结果。
2.3.3 vim的退出问题(保存并且退出)
uu们只要记住:ESC就是我们的"安全键",任何时候如果不确定在什么模式,就先按ESC回到普通模式(命令模式),再输入命令,确保万无一失。
bash
# 想象一个简单的决策流程:
1、按Esc回到普通模式(默认模式 / 命令模式)。
2、问自己:要保存吗?
-> 要保存:输入 :wq或 ZZ(按住shift+ZZ)
-> 不保存:输入 :q!

2.3.3.1 退出方式一:底行模式【:wq】
如下图所示,我们默认的模式是命令模式,也叫普通模式。要先从普通模式切到底行模式,默认有一个冒号------":",在冒号后面输入wq即可保存并退出了。

至于普通模式、底行模式是什么,艾莉丝会在本文的【vim的模式问题】那里介绍。
2.3.3.2 退出方式二:默认模式【shift ZZ】
在默认的普通模式(Normal Mode)下直接按ZZ(注意大写,所以要按住shift的同时再按zz)即可保存退出,不需要进入底行模式。
2.3.4 vim的模式问题:三种常用模式

如下图所示------

2.3.5 vim的模式问题:三种常用模式的切换问题
vim正常模式命令集------

vim末行模式命令集------

i:键盘输入,光标不移动

a:光标会后移一位

o:光标会向下移动一行




2.4 vim命令
vim的基本操作------



2.4.0 光标知识补充
光标上次在哪里,下次就还在哪里。
如果显示器是纸,那么光标就相当于笔------光标在哪里就从哪里开始写。
2.4.1 坐标定位命令:光标的上下定位
【gg】:进入到文本开始------

【G】:移动到文章结尾,锁定【大写模式】可以直接按G,或者shift + g = G,按shift + g------

【行号】+【shift + g / G】:n + G,如6G------



2.4.2 坐标定位命令:光标的左右定位
【shift + 6】/【^】:光标定位到该行行首

【shift + 4】/【$】:光标定位到行尾

2.4.3 坐标定位命令:上下左右键


w(向后一个"单词")------

b(向前一个"单词")------

2.4.4 编辑:复制
【yy】:复制当前行(看不到的话其实是因为相当于复制到剪贴板上了);
【n + yy】:可以复制多行。
2.4.5 编辑:粘贴
【p】:post,粘贴------

【n + p】:一行内容粘贴几次------
bash
#include<studio.h>
int main()
{
printf("hello world\n");
printf("hello world\n");
printf("hello world\n");
printf("hello world\n");
printf("hello world\n");
printf("hello world\n");
return 0;
}

2.4.6 编辑:撤销
**【u(undo)】:**撤销刚刚的操作------可以一直撤销。

万一不小心撤销错了呢?有后悔药吃吗?
2.4.7 编辑:撤销错了还有后悔药吃!只要没退出vim!
【Ctrl + r】:对【u】进行撤销。

2.4.8 编辑:剪切
剪切(剪切到剪切板,所以看不到):dd
配合【p】粘贴使用。
不用在行首剪切,只要在那一行就可以了,那一行往后剪切多少------直接n + dd。

配合【p】粘贴使用------

2.4.9 编辑:删除
**1、删除行:**也是【dd】,不【p】粘贴就是删除------
2、删除列:****【x】,光标位置向后一次删除一次------
3、快速删除一行:按住x不动------
4、细节删除:【n + x】,如hello就5x------
5、也可以定位到某处,输入i(insert模式),正常删除就可以了
2.4.10 视图模式:Ctrl + V
上面的【细节删除】还要自己数,实在是太挫了!

博主手记
下面就是艾莉丝在学习vim这部分知识时的手写笔记啦,大家可以了解一下------




结尾
uu们,本文的内容到这里就全部结束了,艾莉丝再次感谢您的阅读!
往期回顾:
【Linux基础开发工具 (一)】详解Linux软件生态与包管理器:从yum / apt原理到镜像源实战
结语:本期我们在前一篇博客的基础上继续深入学习了Linux中的指令篇,希望对学习Linux指令相关内容的uu有所帮助,不要忘记给博主"一键四连"哦!
🗡博主在这里放了一只小狗,大家看完了摸摸小狗放松一下吧!🗡
૮₍ ˶ ˊ ᴥ ˋ˶₎ა




