linux——vim编辑器


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

专栏链接:《C++学习》、《Linux学习》


文章目录

一、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 进入视图模式

  1. HJKL进行上下移动选中

  2. 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 指令 大部分基于底行模式

原命令 指令作用
nyy 从光标处复制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 批量化修改、替换
相关推荐
顺顺 尼14 小时前
linux 进程信号(上)
linux·c++·算法
niuTaylor15 小时前
飞腾 FT-2000/4 Ubuntu 内存卡 / NVMe SSD 系统制作完整指南
linux·服务器·人工智能·驱动开发·单片机
LCDduhui15 小时前
如何选择适配自己设备的液晶屏
编辑器
傲世仙尊16 小时前
信号量环形队列与线程池起步-把临界资源拆成很多份
linux
Huangjin007_16 小时前
【Linux 系统篇(二十五)】文件(二) 系统文件I/O详解
linux·运维·服务器
ShineWinsu16 小时前
对于ProtoBuffer:ProtoBuffer的介绍以及安装
linux·网络·google·协议·序列化·反序列化·protobuffer
FlightYe17 小时前
视界原理之2D视频(二):视频文件里有什么
android·linux·网络·c++·ffmpeg·音视频·aac
广东帝工17 小时前
桥梁防撞主动预警系统优势
编辑器
GeW19 小时前
从代码到共识:技术突围如何映照大国相处之道
linux
承渊政道19 小时前
Linux系统学习【进程信号详细解析——认识、产生、保存以及捕捉信号】
linux·学习·ubuntu·ssh·vs code·进程信号