七,vi和vim

news2024/11/15 10:21:05

Linux系统会内置vi文本编辑器
Vim具有程序编辑的能力,可以看做是Vi的增强版本,可以主动的以字体颜色辨别语法的正确性,方便程序设计。代码补完、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。

vi和vim常用的三种模式

  • 正常模式

以vim打开一个档案就直接进入一般模式了(这是默认的模式)。在这个模式中,你可以使用【上下左右】按键来移动光标,你可以使用【删除字符】或【删除整行】来处理档案内容,也可以使用【复制、粘贴】来处理你的文件数据

  • 插入模式

按下i、I、o、O、a、A、r、R等任何一个字母之后才会进入编辑模式,一般来说按i即可

  • 命令行模式

先输入esc 再输入: 在这个模式当中,可以提供你相关指令,完成读取、存盘、替换、离开vim、显示行号等的动作则是在此模式当中达成的!

vi和vim基本使用

使用vim开发一个Hello.java程序,保存步骤说明和演示
image.png

各种模式的相互切换

image.png

vi和Vim快捷键练习

1.拷贝当前行 yy ,拷贝当前行向下的5行 5yy ,并粘贴(输入p)
2.删除当前行 dd ,删除当前行向下的5行 5dd
3.在文件中查找某个单词 [命令模式下/关键字 ,回车 查找,输入 n就是找下一个]
4.设置文件的行号 ,取消文件的行号 【在命令行 :set nu 和 :set nonu】
5.编辑/etc/profile文件,使用快捷键到该文档的最末行[G]和首行[gg]
6.在一个文件中输入"hello",然后又撤销这个动作 u
7.编辑/etc/profile文件,在一般模式下,并将光标移动到,输入20行,再输入 shift+g

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1229295.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

基因组坐标系统的 0-based 和 1-based(图文详解)

基因组坐标中的 “0-based” 和 “1-based” 是两种不同的规范,用于表示基因组上的位置。 它们在不同的上下文和文件格式中可能会有不同的使用方式。 下面我们聊聊它们间的区别和应用: 一、0-based 也叫做 zero-based half-open 示例 start0&#xf…

Wireshark网络工具

Wireshark是网络包分析工具。网络包分析工具的主要作用是尝试捕获网络包,并尝试显示包的尽可能详细的情况。 Wireshark是一个免费开源软件,不需要付费,免费使用,可以直接登陆到Wireshark的官网下载安装。 在windows环境中&#x…

KylinOSv10修改ulimit值

问题 ulimit 值过小,可能导致压力测试遇到瓶颈,比如通过nginx建立tcp长链接时,链接数量受限。需要修改ulimit值,Linux默认为1024。 解决 使用root或sudo权限,编辑文件/etc/security/limits.conf,新增以下…

龙讯旷腾PWmat发PRL:多k点计算的NAMD方法应用于小型超胞与在等效的大型超胞中进行的单个Γ点模拟之间的一致性

文章信息 作者信息:郑帆,汪林望 通信单位:上海科技大学 中国科学院半导体所 背景导读 固态材料中的超快载流子动力学在能源材料、光电子学、传感器和量子材料等领域起着关键作用。随着超快实验技术在固态系统中载流子动力学研究中的快速发…

(八)、基于 LangChain 实现大模型应用程序开发 | 基于知识库的个性化问答 (检索 Retrieval)

检索增强生成(RAG)的整体工作流程如下: 在构建检索增强生成 (RAG) 系统时,信息检索是核心环节。检索是指根据用户的问题去向量数据库中搜索与问题相关的文档内容,当我们访问和查询向量数据库时可能会运用到如下几种技术…

简单工程模式

代码实现 //simpleFactory.h #ifndef _SimpleFactory_H_ #define _SimpleFactory_H_#include <iostream> #include <exception> #include <string>using namespace std;class Operation { protected:double _numberA 0;double _numberB 0; public:Operat…

Python的requests库:解决文档缺失问题的策略与实践

在Python的requests库中&#xff0c;有一个名为ALL_PROXY的参数&#xff0c;但是该参数的文档并未进行详细的描述。这使得用户在使用该参数时可能会遇到一些问题&#xff0c;例如不知道如何正确地配置和使用该参数。 解决方案 针对这个问题&#xff0c;我们可以采取以下几种解…

单片微机原理与接口技术期末复习

第二章&#xff1a; STC15F2K60S2 参数含义 &#xff08;1&#xff09;“STC”代表的含义是不能在应用中访问程序存储器&#xff0c;但设置了可单独访问的数据 Flash 区域。 &#xff08;2&#xff09;F &#xff1a;工作电源为5V。 &#xff08;3&#xff09;2k&#xff1a;片…

PPT基础:表格

目录 表格基本功能底纹框线单元格表格美化 表格基本功能 底纹 所在位置&#xff1a;插入图表>>>表设计>>>底纹 底纹&#xff1a;相当于每个单元格的“颜色填充”如何用表格拆分图片 &#xff08;1&#xff09;生成一个表格>>>插入一张图片>>…

C#开发的OpenRA游戏之属性QuantizeFacingsFromSequence(7)

C#开发的OpenRA游戏之属性QuantizeFacingsFromSequence(7) 前面分析了身体的方向,在这里继续QuantizeFacingsFromSequence属性,这个属性就是通过序列定义文件里获取身体的方向。 根据前面分析可知,同样有一个信息类QuantizeFacingsFromSequenceInfo: [Desc("Deriv…

分布式与微服务 —— 初始

前言 距今微服务的提出已经过去快十个春秋&#xff0c;网络上的博文讲微服务也是一抓一大把&#xff0c;但是荔枝仍然觉得还是有必要自己梳理一下整个知识体系。在这篇文章中&#xff0c;荔枝将会以一个初学者的角度来切入&#xff0c;从分布式系统和微服务架构引入&#xff0c…

如何使用 WPF 应用程序连接 FastReport报表

随着期待已久的FastReport WPF的发布&#xff0c;您不再需要使用 FastReport .NET 来处理基于 WPF 的项目。 不久前&#xff0c;在 FastReport .NET 中使用 WPF 还相当不方便。并非一切都进展顺利&#xff1b;连接 FastReport.dll 和许多其他问题存在问题。我们重新思考了该方…

(十二)Flask重点之session

session 自我介绍&基本使用&#xff1a; 在Flask中&#xff0c;Session是一种用于在客户端和服务器之间存储和传输数据的机制。它允许您在用户与应用程序之间保持状态&#xff0c;并且可以存储和检索有关特定用户的信息。 Flask使用Werkzeug库提供的SecureCookie来实现S…

[黑马程序员SpringBoot2]——开发实用篇2

目录&#xff1a; Mongodb简介Mongodb下载与安装Mongodb基础操作Sprintboot整合MongodbES简介ES下载与安装ES索引操作ES文档操作SpringBoot整合ES客户端操作添加文档查询文档缓存的作用Spring缓存使用方式手机验证码案例-生成验证码手机验证码案例-验证码校验变更缓存供应商Eh…

逐字节讲解 Redis 持久化(RDB 和 AOF)的文件格式(一)

前言 相信各位对 Redis 的这两种持久化机制都不陌生&#xff0c;简单来说&#xff0c;RDB 就是对数据的全量备份&#xff0c;AOF 则是增量备份&#xff0c;而从 4.0 版本开始引入了混合方式&#xff0c;以 7.2.3 版本为例&#xff0c;会生成三类文件&#xff1a;RDB、AOF 和记…

6.10二叉树的所有路径(LC257-E,不太会)

算法&#xff1a; 前序遍历&#xff1a; 因为要让父节点指向孩子节点&#xff0c;才能输出路径。 递归与回溯相辅相成&#xff0c;只要有递归&#xff0c;就一定有回溯。 举个例子理解一下&#xff1a; 中&#xff1a;先push入1 左&#xff1a;再Push入2 右&#xff1a;再…

Linux系统编程 day03 Makefile、gdb、文件IO

Linux系统编程 day03 Makefile、gdb、文件IO 1. Makefile2. gdb3. 文件IO 1. Makefile Makefile文件中定义了一系列规则来指定哪些文件需要先编译&#xff0c;哪些文件需要后编译&#xff0c;哪些文件需要重新编译&#xff0c;甚至更加复杂的功能操作。Makefile就像一个shell脚…

详解“协方差”与“相关系数”

引言 PCA的目标对象是矩阵&#xff0c;例如&#xff0c;有m个样本&#xff0c;每个样本有n个特征&#xff0c;那么就可以构造成一个样本矩阵&#xff0c;并转换成矩阵的形式。 PCA的最终目的是减少特征的个数&#xff0c;去掉那些不重要的特征&#xff0c;也就是减小矩阵列向量…

【LeetCode:689. 三个无重叠子数组的最大和 | 序列dp+前缀和】

&#x1f680; 算法题 &#x1f680; &#x1f332; 算法刷题专栏 | 面试必备算法 | 面试高频算法 &#x1f340; &#x1f332; 越难的东西,越要努力坚持&#xff0c;因为它具有很高的价值&#xff0c;算法就是这样✨ &#x1f332; 作者简介&#xff1a;硕风和炜&#xff0c;…

在回调之间共享数据

可以在 App 中为 UI 组件编写回调函数&#xff0c;以指定用户与其交互时的行为方式。 在具有多个相互依赖的 UI 组件的 App 中&#xff0c;回调函数通常必须访问主 App 函数中定义的数据&#xff0c;或与其他回调函数共享数据。例如&#xff0c;如果创建一个具有列表框的 App&a…