
❀保持低旋律节奏->个人主页

文章目录
- ------光标移动指令------
- ------切换行数指令------
- ------复制粘贴命令------
- ------剪切、删除指令------
- ------撤销、反撤销指令------
- 👍------批量化注释、批量化删除命令------
- 👍------不退出vim进行命令执行------
- ------二分、多分视图指令------
- ------批量搜索关键字、批量化修改指令------
- 👍------批量化修改------
- 👍------进入vim文本文档直接跳转到对应行号------
- 最近指令匹配
- ------将用户添加到白名单的指令,解决用户sudo不了的问题------
- [------修改vim 配置文件让vim变得更便捷------](#——修改vim 配置文件让vim变得更便捷——)
一、vim认识和使用
vim就是我们说的文本编辑器,vim只能用来写代码
vim随着各种代码编辑环境的出现,vim正在走下坡路。但是vim同c语言在编程中的地位一样,有着无法替代的作用。 vim能够当成快速文本修改工具。直接可以修改里面的东西。
二、vim里的相关概念
vim里面分为三种模式
命令模式------最核心的模式、也是默认模式
插入模式------用来写代码
底行模式
他们三者的转换关系如图所示

------光标移动指令------
hjkl 分别为左下、右上
shift + ^ 移动到本行开头
shift + $ 移动到本行末尾
------切换行数指令------
gg 移动到开头
G 移动到末尾
n + G 移动到第n行

------复制粘贴命令------
n\] yy 从光标处开始复制n行 \[n\] p 从光标处粘贴n次
bash
#进入命令模式
4 yy
1 p


------剪切、删除指令------
n\] dd 从光标处开始剪切n行 \[n\] p 从光标处粘贴n次 如果这里不粘贴那就是删除 \[n\] x 为从当前行 当前光标删除n个单位
bash
#进入命令模式
4 dd
1 p


------撤销、反撤销指令------
进入命令模式 直接输入 u 撤销指令
进入命令试图 直接输入 ctrl r 撤销刚才的指令
👍------批量化注释、批量化删除命令------
- 批量化删除
1.ctrl v 进入视图模式
HJKL进行上下移动选中
d 进行删除
- 批量化注释
1 ctrl v 进入试图模式
2.HJKL 进行上下移动选中
3.shift i 进入插入模式
// 进行注释
4.Esc 完成批量化注释
三、底行模式
底行模式其实本质上也是一种命令模式。底行模式中有一个非常实用的
底行模式中如果你打开了一个不存在的文件,没有编辑就退出的花,那么这个文件不会被保存下来。但是如果你编辑了 或者通过w保存了 那么这个文件就可以保存下来
👍------不退出vim进行命令执行------
进入底行模式 前面 ! +命令
下面举一个 将test.c 文件进行汇编、链接、然后输出的样例




------二分、多分视图指令------
vs + 文件名 可以生成二分、多分试图
ctrl +ww 可以移动光标到另一个文件夹里面

------批量搜索关键字、批量化修改指令------
vim 底行模式下 输入/关键字 n直接跳转到下一行

👍------批量化修改------
底行模式下 %s/想要修改的内容/修改后的内容/g


👍------进入vim文本文档直接跳转到对应行号------
非常简单 vim code.c +n 直接跳转到n行
最近指令匹配
!加首字母
------将用户添加到白名单的指令,解决用户sudo不了的问题------
在root账号下面 进入/etc/sudoers文件
找到103 104行相似的内容
加上用户名 ALL = (ALL) ALL即可
wq!强制保存退出

------修改vim 配置文件让vim变得更便捷------
在家目录下 输入 vim .vimrc指令
访问Ai 输入



指令汇总
系统类指令
| 原指令 | 指令作用 |
|---|---|
| cat /etc/os-release | 查看系统的 "发行版信息" |
| uname -a | 查看系统内核详细信息 |
| ls yum /etc/yum.repos.d | 查看系统仓库 |
| vim /etc/sudores | 修改白名单命令 |
| vim .vimrc | 修改vim配置文件指令 |
vim 指令 大部分基于底行模式
| 原命令 | 指令作用 |
|---|---|
| [n]yy | 从光标处复制n行 |
| [n] p | 从光标处粘贴n次 |
| [n] dd | 从光标处剪切n行 |
| [n] dd | 从光标处删除n行 |
| [n] x | 从当前行 删除n个单位字符 |
| [n] r | 从当前行替换n个字符 |
| R | 进入替换模式 |
| shift ~ | 切换大小写 |
| 原命令 | 指令作用 |
|---|---|
| gg | 移至首行 |
| G | 移至末行 |
| n [G] | 移至n行 |
| shift ^ | 移至本行开头 |
| shift $ | 移至本行末尾 |
| 原命令 | 需要注意的事项 |
|---|---|
| ctrl+v、HJKL、shift i、//、Esc | 批量化注释 |
| ctrl+v、HJKL、d | 批量化删除 |
| %s/ 原文本内容/修改后的文本内容 /g | 批量化修改、替换 |





