Linux操作系统基础(八):Linux的vi/vim编辑器

文章目录
Linux的vi/vim编辑器
一、vi/vim编辑器介绍
二、打开文件
三、VIM编辑器的三种模式(重点)
四、命令模式相关命令
五、底行模式相关命令
Linux的vi/vim编辑器
一、vi/vim编辑器介绍
vi是visual interface的简称, 是Linux中最经典的文本编辑器
vi的核心设计思想:让程序员的手指始终保持在键盘的核心区域, 就能完成所有编辑操作
vi的特点:
-
只能是编辑文本内容, 不能对字体段落进行排版
-
不支持鼠标操作
-
没有菜单
-
只有命令
vim 是从vi发展出来的文本编辑器, 支持代码补全、编译及显示效果等方面编程的功能提别丰富, 在程序员中被广泛使用, 被称为编辑器之神。

二、打开文件
vi a.txt #直接打开文件
vim a.txt #vim是vi的增强版
vim +10 a.txt #直接打开文件,并定位到第10行
三、VIM编辑器的三种模式(重点)

四、命令模式相关命令
| 命令 | 功能 |
|---|---|
| o | 在当前行后面插入一空行 |
| O | 在当前行前面插入一空行 |
| dd | 删除光标所在行 |
| ndd | 从光标位置向下连续删除 n 行 |
| yy | 复制光标所在行 |
| nyy | 从光标位置向下连续复制n行 |
| p | 粘贴 |
| u | 撤销上一次命令 |
| gg | 回到文件顶部 |
| G | 回到文件末尾 |
| /str | 查找str |
五、底行模式相关命令
| 命令 | 功能 |
|---|---|
| :w 文件 | 另存为 |
| :w | 保存(ctrl + s) |
| :q | 退出, 如果没有保存,不允许退出 |
| :q! | 强行退出, 不保存退出 |
| :wq | 保存并退出 |
| :x | 保存并退出 |
| Shift + z + z | 保存退出 |
| :set nu | 设置行号 |
| :%s/旧文本/新文本 | 文本替换 |
| :noh | 取消高亮 |
-
📢博客主页:https://lansonli.blog.csdn.net
-
📢欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正!
-
📢本文由 Lansonli 原创,首发于 CSDN博客🙉
-
📢停下休息的时候不要忘了别人还在奔跑,希望大家抓紧时间学习,全力奔赴更美好的生活✨
相关文章:
Linux操作系统基础(八):Linux的vi/vim编辑器
文章目录 Linux的vi/vim编辑器 一、vi/vim编辑器介绍 二、打开文件 三、VIM编辑器的三种模式(重点) 四、命令模式相关命令 五、底行模式相关命令 Linux的vi/vim编辑器 一、vi/vim编辑器介绍 vi是visual interface的简称, 是Linux中最经典的文本编辑器 vi的核心设计思想…...
nginx限制网段访问
文章目录 nginx限制网段访问介绍:使用:示例:介绍网段:nginx限制网段访问 介绍: Nginx的deny和allow指令是由ngx_http_access_module模块提供, Nginx安装默认内置了该模块 使用: nginx访问控制模块: 想禁止哪个ip访问就加上deny IP, 想允许哪个ip访问就加上allow…...
Linux开机自动执行自定义脚本或命令
尝试了多种方法,现总结如下: 在用户登录之前自动执行 1. /etc/init.d/rcS 2. /etc/inittab 在用户登录之后自动执行:下述方法,实际尝试发现,之后再输入用户名和密码后才会自动执行。当如果不需要输入用户名或密码时…...
【Linux】 网络编程套接字
目录 预备知识 网络字节序 网络字节序和主机字节序转换的库函数 socket编程接口 socket常见API sockaddr结构 套接字的种类 预备知识 1.在IP数据包头部中,有两个IP地址,分别叫做源IP地址和目的IP地址。 2.端口号:是传输层协议的内容…...
MATLAB矩阵的操作(第二部分)
师从清风 矩阵的创建方法 在MATLAB中,矩阵的创建方法主要有三种,分别是:直接输入法、函数创建法和导入本地文件中的数据。 直接输入法 输入矩阵时要以中括号“[ ]”作为标识符号,矩阵的所有元素必须都在中括号内。 矩阵的同行元…...
基础面试题整理6之Redis
1.Redis的应用场景 Redis支持类型:String、hash、set、zset、list String类型 hash类型 set类型 zset类型 list类型 一般用作缓存,例如 如何同时操作同一功能 2.redis是单线程 Redis服务端(数据操作)是单线程,所以Redis是并发安全的,因…...
MySQL基础查询篇(7)-常用的字符串函数
MySQL数据库是目前广泛应用于各种系统中的一种关系型数据库管理系统。在MySQL中,有许多常见的字符串函数,可以对字符串进行各种处理和操作。本文将介绍MySQL数据库中常用的一些字符串函数,并提供详细示例。 CONCAT函数:用于将两个…...
如何实现视线(目光)的检测与实时跟踪
如何实现视线(目光)的检测与实时跟踪 核心步骤展示说明 找到人脸 检测人脸特征点 根据特征点找到人眼区域 高精度梯度算法检测瞳孔中心 根据眼睛周边特征点计算眼睛中心 瞳孔中心和眼睛中心基于视线模型计算视线方向 视线方向可视化 详细实现与说明: https://stud…...
STM32 FSMC (Flexible static memory controller) 灵活静态内存控制器介绍
文章目录 1. 介绍FSMC2. FSMC特点3. Block示意图4. AHB接口4.1 Supported memories and transactionsGeneral transaction rulesConfiguration registers 5. 外部设备地址映射5.1 NOR/PSRAM地址映射将NOR Flash/PSRAM的支持进行封装 5.2 NAND/PC Card地址映射 1. 介绍FSMC 说到…...
手把手教你开发Python桌面应用-PyQt6图书管理系统-图书信息维护模块UI设计实现
锋哥原创的PyQt6图书管理系统视频教程: PyQt6图书管理系统视频教程 Python桌面开发 Python入门级项目实战 (无废话版) 火爆连载更新中~_哔哩哔哩_bilibiliPyQt6图书管理系统视频教程 Python桌面开发 Python入门级项目实战 (无废话版) 火爆连载更新中~共计24条视频&…...
SpringBoot源码解读与原理分析(六)WebMvc场景的自动装配
文章目录 2.6 WebMvc场景下的自动装配原理2.6.1 WebMvcAutoConfiguration2.6.2 Servlet容器的装配2.6.2.1 EmbeddedTomcat、EmbeddedJetty、EmbeddedUndertow2.6.2.2 BeanPostProcessorsRegistrar(后置处理器的注册器)2.6.2.3 两个定制器的注册 2.6.3 DispatcherServlet的装配2…...
git恢复rebase过程中遇到权限问题和丢失的提交
文章目录 一、检查丢失的提交是否还在 reflog 中二、创建一个新分支来恢复丢失的提交三、处理权限问题四. 使用 git fsck 查找丢失对象1、创建一个新分支来恢复该提交2、检查和合并提交 五. 介绍git中命令reflog 与 fsck1、git reflog2、git fsck使用场景 一、检查丢失的提交是…...
Spring boot 集成redis
一、使用spring bootspring-boot-starter-data-redis 导入maven包 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-redis</artifactId> </dependency> spring boot配置文件 spring.re…...
c++ STL系列——(一)概述
引言 在软件开发的世界里,C一直是一门备受青睐的编程语言,特别是在需要高性能和灵活性的场合。而C的标准模板库(Standard Template Library,简称STL)无疑是这门语言中最强大的工具之一。STL提供了一系列的数据结构和算…...
AI-数学-高中-25-三角函数一图像解决三角函数不等式
原作者视频:【三角函数】【考点精华】1图像解决三角函数不等式问题(基础)_哔哩哔哩_bilibili 1.三角函数图像法; 2.不好画图像时:任意角的三角函数图像,在象限中比较,在4个象限中寻找角度的关系。 示例1…...
在Ubuntu上安装JetBrains Toolbox并解决libfuse.so.2依赖问题
在安装JetBrains Toolbox的过程中,我们遇到了libfuse.so.2依赖缺失的问题。这个问题通常发生在尝试运行AppImage格式的程序时,如果系统缺少必要的FUSE(Filesystem in Userspace)支持。以下是我在解决这个问题并在Ubuntu上成功安装…...
在vscode上传项目到gitee
一、在Gitee上新建一个仓库 Tip:若已经创建过了,直接跳到第二部分看VsCode如何上传代码到Gitee 创建仓库比较简单,下面两张图就是整个过程,这里不在赘述,具体如下: 二、VsCode连接Gitee上创建的仓…...
比较两次从接口获取的数据,并找出变动的字段
问题:有这么一个接口数据,每次会返回这么一个数据: [{Id:1,pending:65,queued:0,completed:0},{Id:2,pending:0,queued:0,completed:0}],请问再次请求这个接口的时候如何将获取的数据和上一次获取到的数据进行比较,找出变动的字段…...
Java并发基础:LinkedBlockingDeque全面解析!
内容概要 LinkedBlockingDeque提供了线程安全的双端队列实现,它支持在队列两端高效地进行插入和移除操作,同时具备阻塞功能,能够很好地协调生产者与消费者之间的速度差异,其内部基于链表结构,使得并发性能优异&#x…...
Zabbix6.x配置中文界面 解决乱码问题
Zabbix6.x配置中文界面 解决乱码问题 Zabbix6.x界面无法选择中文,通过安装语言包解决。后面也解决了zabbix6中文方块(乱码)问题。 配置中文语言包 系统中默认没有携带中文语言包,可以通过以下命令查看 localectl list-locales #…...
vscode里如何用git
打开vs终端执行如下: 1 初始化 Git 仓库(如果尚未初始化) git init 2 添加文件到 Git 仓库 git add . 3 使用 git commit 命令来提交你的更改。确保在提交时加上一个有用的消息。 git commit -m "备注信息" 4 …...
日语学习-日语知识点小记-构建基础-JLPT-N4阶段(33):にする
日语学习-日语知识点小记-构建基础-JLPT-N4阶段(33):にする 1、前言(1)情况说明(2)工程师的信仰2、知识点(1) にする1,接续:名词+にする2,接续:疑问词+にする3,(A)は(B)にする。(2)復習:(1)复习句子(2)ために & ように(3)そう(4)にする3、…...
React Native 开发环境搭建(全平台详解)
React Native 开发环境搭建(全平台详解) 在开始使用 React Native 开发移动应用之前,正确设置开发环境是至关重要的一步。本文将为你提供一份全面的指南,涵盖 macOS 和 Windows 平台的配置步骤,如何在 Android 和 iOS…...
基于ASP.NET+ SQL Server实现(Web)医院信息管理系统
医院信息管理系统 1. 课程设计内容 在 visual studio 2017 平台上,开发一个“医院信息管理系统”Web 程序。 2. 课程设计目的 综合运用 c#.net 知识,在 vs 2017 平台上,进行 ASP.NET 应用程序和简易网站的开发;初步熟悉开发一…...
Admin.Net中的消息通信SignalR解释
定义集线器接口 IOnlineUserHub public interface IOnlineUserHub {/// 在线用户列表Task OnlineUserList(OnlineUserList context);/// 强制下线Task ForceOffline(object context);/// 发布站内消息Task PublicNotice(SysNotice context);/// 接收消息Task ReceiveMessage(…...
解决Ubuntu22.04 VMware失败的问题 ubuntu入门之二十八
现象1 打开VMware失败 Ubuntu升级之后打开VMware上报需要安装vmmon和vmnet,点击确认后如下提示 最终上报fail 解决方法 内核升级导致,需要在新内核下重新下载编译安装 查看版本 $ vmware -v VMware Workstation 17.5.1 build-23298084$ lsb_release…...
如何为服务器生成TLS证书
TLS(Transport Layer Security)证书是确保网络通信安全的重要手段,它通过加密技术保护传输的数据不被窃听和篡改。在服务器上配置TLS证书,可以使用户通过HTTPS协议安全地访问您的网站。本文将详细介绍如何在服务器上生成一个TLS证…...
10-Oracle 23 ai Vector Search 概述和参数
一、Oracle AI Vector Search 概述 企业和个人都在尝试各种AI,使用客户端或是内部自己搭建集成大模型的终端,加速与大型语言模型(LLM)的结合,同时使用检索增强生成(Retrieval Augmented Generation &#…...
解析奥地利 XARION激光超声检测系统:无膜光学麦克风 + 无耦合剂的技术协同优势及多元应用
在工业制造领域,无损检测(NDT)的精度与效率直接影响产品质量与生产安全。奥地利 XARION开发的激光超声精密检测系统,以非接触式光学麦克风技术为核心,打破传统检测瓶颈,为半导体、航空航天、汽车制造等行业提供了高灵敏…...
【C++】纯虚函数类外可以写实现吗?
1. 答案 先说答案,可以。 2.代码测试 .h头文件 #include <iostream> #include <string>// 抽象基类 class AbstractBase { public:AbstractBase() default;virtual ~AbstractBase() default; // 默认析构函数public:virtual int PureVirtualFunct…...
