当前位置: 首页 > news >正文

vim常用命令

vim常用三种模式

命令模式(Command mode)
插入模式(Insert mode)
末行模式(Last line mode)

在这里插入图片描述

(一)进入命令模式

vi
或者
vim

(二)命令模式 -> 插入模式

(1)在光标之前插入内容(insert)

i

(2)在光标之后插入内容(append)

a

(3)在光标的下一行开头插入内容

o

(三)插入模式 -> 命令模式

esc

(四)命令模式 -> 末行模式

:

(五)末行模式 -> 命令模式

执行命令结束

(六)退出末行模式

(1)不保存退出

:q!

(2)保存退出

:wq!

一、命令模式(Command mode)

(一)移动光标

(1)移动到首行

gg

(2)移动到尾行

G

(二)复制和粘贴

(1)复制一行

yy
p

(2)复制3行

3
yy
p

(三)剪切和粘贴

(1)剪切一行

dd
p

(2)剪切3行

3
dd
p

(四)删除

(1)删除一行

dd

(2)删除3行

3
dd

(3)删除光标所在的一个单词

db

(4)删除光标所在的一个字符(x小写)

x

(5)删除光标前面的一个字符(X大写)

X

(五)撤销和恢复

(1)撤销前面一个操作

u

(2)恢复撤销的操作

ctrl + R

二、插入模式(Insert mode)

正常编辑内容。

三、末行模式(Last line mode)

(一)行号

(1)显示行号

:set nubmer
或者
:set nu

(2)取消行号

:set nonumber
或者
:set nonu

(二)跳转

(1)跳转到第10行

:10

(2)跳转到首行

:0

(三)查找

(1)查找文本中的字符串hello

/hello

(2)上一个

N

(3)下一个

n

(四)替换

(1)替换当前行第一个str1为str2

:s/str1/str2/

(2)替换当前行所有str1为str2

:s/str1/str2/g

(3)替换每一行中第一个str1为str2

:%s/str1/str2/

(4)替换每一行中所有str1为str2

:%s/str1/str2/g

(5)替换当前行开始到最后一行中每一行的第一个str1为str2

:.,$s/str1/str2/

(6)替换当前行开始到最后一行中每一行所有str1为str2

:.,$s/str1/str2/g

(7)替换第n行开始到最后一行中每一行的第一个str1为str2

:n,$s/str1/str2/

(8)替换第n行开始到最后一行中每一行所有str1为str2

:n,$s/str1/str2/g

(五)添加

(1)在每行行首添加hello

:%s/^/hello/

(2)在每行行尾添加hello

:%s/$/hello/

(3)在第3行到第5行的行首添加hello

:3,5s/^/hello/

(4)在第3行到第5行的行尾添加hello

:3,5s/$/hello/

(六)删除

(1)删除第10行到第20行

:10,20d

(2)删除所有行

:1,$d
或者
:%d

(3)删除首行到当前行

:1,.d

(4)删除当前行到末行

:.,$d

(5)删除首行

:1d

(6)删除末行

:$d

(7)删除包含hello的行

:g/hello/d

(8)删除不包含hello的行

:%g!/hello/d
或者
:v/hello/d

(9)删除以hello开头的行

:g/^hello/d

(10)删除以hello结尾的行

:g/hello$/d

(11)删除所有空行

:g/^$/d

相关文章:

vim常用命令

vim常用三种模式 命令模式(Command mode) 插入模式(Insert mode) 末行模式(Last line mode) (一)进入命令模式 vi 或者 vim(二)命令模式 -> 插入模式 &…...

华为OD机试 - 最差产品奖 | 机试题算法思路 【2023】

最近更新的博客 华为OD机试 - 简易压缩算法(Python) | 机试题算法思路 【2023】 华为OD机试题 - 获取最大软件版本号(JavaScript) 华为OD机试 - 猜字谜(Python) | 机试题+算法思路 【2023】 华为OD机试 - 删除指定目录(Python) | 机试题算法思路 【2023】 华为OD机试 …...

HR:你会Python数据分析吗?

之前看到一个段子: 以前去面试,HR会问你“精通office吗?” 现在去面试,HR会问你“会Python数据分析吗?” 图片来源:网络 大数据时代,无论是数据分析师、研发,到运营、市场、产品经…...

算法18:LeetCode_链表相关算法题

链表无小事,只要是涉及到链表的算法题,边界值的设定尤为重要,而且及其容易出错误。这就要求我们平时多加练习。但是,我们在面试和笔试的过程中往往会碰到链表相关的题目,所以我们在笔试的时候一般都会借助系统提供的工…...

SpringBoot集成Tomcat服务

文章目录一、Tomcat集成1、依赖层级2、自动化配置二、Tomcat架构三、Tomcat配置1、基础配置2、属性配置类3、配置加载分析四、周期管理方法1、控制类2、核心方法使用的成本越低,内部封装越复杂; 一、Tomcat集成 1、依赖层级 在SpringBoot框架的web依赖…...

【机器学习】决策树-C4.5算法

1.C4.5算法 C4.5算法与ID3相似,在ID3的基础上进行了改进,采用信息增益比来选择属性。ID3选择属性用的是子树的信息增益,ID3使用的是熵(entropy, 熵是一种不纯度度量准则),也就是熵的变化值&…...

actipro-winforms-controls-23.1.0 Crack

actipro-winforms一组用于构建漂亮的 Windows 窗体桌面应用程序的 UI 控件,用于构建 IDE 的高级停靠窗口、MDI、属性网格、树控件和文件夹/文件浏览器,用于常见数据类型、自动完成、屏蔽编辑和代码编辑的强大编辑器,功能区、图表、微型图表、…...

适合打游戏用的蓝牙耳机有哪些?吃鸡无延迟的蓝牙耳机推荐

现在手游的兴起,让游戏市场变得更加火爆,各种可以提高玩家体验的外设也越来越多,除了提升操作的外置按键与手柄外,能带来更出色音质与舒心使用的游戏耳机,整体氛围感更好,让玩家在细节上占据优势&#xff0…...

1000:入门测试题目[不一样的题解][85种写法]【A+B问题】

题目: 1000:入门测试题目 时间限制: 1000 ms 内存限制: 32768 KB 提交数: 262857 通过数: 158152 【题目描述】 求两个整数的和。 【输入】 一行,两个用空格隔开的整数。 【输出】 两个整数的和。 【输入样例】 2 3 【输出样例】…...

FastReport .NET 2023.1.13 Crack

FastReport .NET 使用来自 ADO .NET 数据源的数据。它可以排序和过滤数据行,使用主从关系和查找数据列。一切都可以通过点击几下鼠标来完成。 直接连接到 ADO、MS SQL 或基于 xml 的数据库。其他连接器可作为插件使用。 能够从 IEnumerable 类型的业务对象中获取数…...

unzip: cannot find zipfile directory in one of

下面是执行flutter doctor 后报错内容 End-of-central-directory signature not found. Either this file is not a zipfile, or it constitutes one disk of a multi-part archive. In the latter case the central directory and zipfile comment will be found on the last …...

RFC4543: Galois Message Authentication Code (GMAC);CONFIG_CRYPTO_GCM

在2010年这个算法被Linux社区加进来:说明算法还是挺重要,普遍使用。 commit 73c89c15b959adf06366722c4be8d2eddec0a529 Author: Tobias Brunner <tobias@strongswan.org> Date: Sun Jan 17 21:52:11 2010 +1100crypto: gcm - Add RFC4543 wrapper for GCMThis patc…...

【YOLOv5】 02-标注图片,训练并使用自己的模型

在上一篇文章中&#xff0c;我们完成了YOLOv5的安装和测试。如果想检测自定义目标&#xff0c;就需要用到LabelImg来对图片打标签&#xff0c;本篇文章介绍了LabelImg安装与使用&#xff0c;以及如何训练并使用自己的模型。一、安装LabelImg输入如下命令进行安装&#xff1a;pi…...

2023.2.15日学习内容(用户的增删改查)

1&#xff0c;如果前端时间需要年月日&#xff0c;不需要时分秒&#xff0c;则一般情况下再数据库里面操作即可2.正常情况下&#xff0c;以后所有的查询都不能用* 查询所有列3.删除思路逻辑1&#xff09;点击删除按钮需要对其进行监听2&#xff09;对于重要的信息删除应该给用户…...

车载以太网 - 测试用例设计 - 时间参数 - 11

前面已经介绍过DoIP相关的时间参数信息,然而对于时间参数信息相关的测试用例该如何设计呢?个人认为这是用例中最好设计的一类,这类的用例只需要按照定义去设计写测试用例即可,难的是自动化脚本开发和手动测试执行。毕竟时间参数一般都是毫秒级的验证,就算是秒级的我们也很…...

【C#个人错题笔记】

观前提醒 记录一些我不会或者少见的内容&#xff0c;不一定适合所有人 字符串拼接 int a3,b8; Console.WriteLine(ab);//11 Console.WriteLine("ab");//ab Console.WriteLine(a""b);//38 Console.WriteLine("ab"ab);//ab38 Console.WriteLine…...

JavaScript刷LeetCode拿offer-树的遍历

什么是树 一种分层数据的抽象模型。前端工作中常见的树包括&#xff1a;DOM树&#xff0c;级联选择&#xff0c;树形控件JS中没有树&#xff0c;可以用Object和Array构建树树的常用操作&#xff1a;深度/广度优先遍历&#xff0c;先中后序遍历 深度优先遍历 访问根节点对根节…...

《FPGA学习》->呼吸灯

&#x1f34e;与其担心未来&#xff0c;不如现在好好努力。在这条路上&#xff0c;只有奋斗才能给你安全感。你若努力&#xff0c;全世界都会为你让路。呼吸灯&#xff0c;简而言之就像人类呼吸一样&#xff0c;有节奏的让LED灯从&#xff1a;灭->微微亮->微亮->亮-&g…...

【大数据离线开发】7.4 HBase数据保存和过滤器

7.4 数据保存的过程 注意&#xff1a;数据的存储&#xff0c;都需要注意Region的分裂 HDFS&#xff1a;数据的平衡 ——> 数据的移动&#xff08;拷贝&#xff09;HBase&#xff1a;数据越来越多 ——> Region的分裂 ——> 数据的移动&#xff08;拷贝&#xff09; …...

CentOS7安装MariaDB步骤

文章目录1.配置MariaDB yum源2.安装MariaDBMariaDB数据库管理系统是MySQL的一个分支&#xff0c;主要由开源社区在维护&#xff0c;采用GPL授权许可。 MariaDB的目的是完全兼容MySQL&#xff0c;包括API和命令行&#xff0c;使之能轻松成为MySQL的代替品。 CentOS 6 或早期的版…...

AI-调查研究-01-正念冥想有用吗?对健康的影响及科学指南

点一下关注吧&#xff01;&#xff01;&#xff01;非常感谢&#xff01;&#xff01;持续更新&#xff01;&#xff01;&#xff01; &#x1f680; AI篇持续更新中&#xff01;&#xff08;长期更新&#xff09; 目前2025年06月05日更新到&#xff1a; AI炼丹日志-28 - Aud…...

Xshell远程连接Kali(默认 | 私钥)Note版

前言:xshell远程连接&#xff0c;私钥连接和常规默认连接 任务一 开启ssh服务 service ssh status //查看ssh服务状态 service ssh start //开启ssh服务 update-rc.d ssh enable //开启自启动ssh服务 任务二 修改配置文件 vi /etc/ssh/ssh_config //第一…...

MMaDA: Multimodal Large Diffusion Language Models

CODE &#xff1a; https://github.com/Gen-Verse/MMaDA Abstract 我们介绍了一种新型的多模态扩散基础模型MMaDA&#xff0c;它被设计用于在文本推理、多模态理解和文本到图像生成等不同领域实现卓越的性能。该方法的特点是三个关键创新:(i) MMaDA采用统一的扩散架构&#xf…...

Unity | AmplifyShaderEditor插件基础(第七集:平面波动shader)

目录 一、&#x1f44b;&#x1f3fb;前言 二、&#x1f608;sinx波动的基本原理 三、&#x1f608;波动起来 1.sinx节点介绍 2.vertexPosition 3.集成Vector3 a.节点Append b.连起来 4.波动起来 a.波动的原理 b.时间节点 c.sinx的处理 四、&#x1f30a;波动优化…...

均衡后的SNRSINR

本文主要摘自参考文献中的前两篇&#xff0c;相关文献中经常会出现MIMO检测后的SINR不过一直没有找到相关数学推到过程&#xff0c;其中文献[1]中给出了相关原理在此仅做记录。 1. 系统模型 复信道模型 n t n_t nt​ 根发送天线&#xff0c; n r n_r nr​ 根接收天线的 MIMO 系…...

SAP学习笔记 - 开发26 - 前端Fiori开发 OData V2 和 V4 的差异 (Deepseek整理)

上一章用到了V2 的概念&#xff0c;其实 Fiori当中还有 V4&#xff0c;咱们这一章来总结一下 V2 和 V4。 SAP学习笔记 - 开发25 - 前端Fiori开发 Remote OData Service(使用远端Odata服务)&#xff0c;代理中间件&#xff08;ui5-middleware-simpleproxy&#xff09;-CSDN博客…...

Python Ovito统计金刚石结构数量

大家好,我是小马老师。 本文介绍python ovito方法统计金刚石结构的方法。 Ovito Identify diamond structure命令可以识别和统计金刚石结构,但是无法直接输出结构的变化情况。 本文使用python调用ovito包的方法,可以持续统计各步的金刚石结构,具体代码如下: from ovito…...

Selenium常用函数介绍

目录 一&#xff0c;元素定位 1.1 cssSeector 1.2 xpath 二&#xff0c;操作测试对象 三&#xff0c;窗口 3.1 案例 3.2 窗口切换 3.3 窗口大小 3.4 屏幕截图 3.5 关闭窗口 四&#xff0c;弹窗 五&#xff0c;等待 六&#xff0c;导航 七&#xff0c;文件上传 …...

【网络安全】开源系统getshell漏洞挖掘

审计过程&#xff1a; 在入口文件admin/index.php中&#xff1a; 用户可以通过m,c,a等参数控制加载的文件和方法&#xff0c;在app/system/entrance.php中存在重点代码&#xff1a; 当M_TYPE system并且M_MODULE include时&#xff0c;会设置常量PATH_OWN_FILE为PATH_APP.M_T…...

【安全篇】金刚不坏之身:整合 Spring Security + JWT 实现无状态认证与授权

摘要 本文是《Spring Boot 实战派》系列的第四篇。我们将直面所有 Web 应用都无法回避的核心问题&#xff1a;安全。文章将详细阐述认证&#xff08;Authentication) 与授权&#xff08;Authorization的核心概念&#xff0c;对比传统 Session-Cookie 与现代 JWT&#xff08;JS…...