【Linux】vim指令大全,收藏这篇就够了

news2024/11/19 15:35:06

在这里插入图片描述

💐 🌸 🌷 🍀 🌹 🌻 🌺 🍁 🍃 🍂 🌿 🍄🍝 🍛 🍤
📃个人主页 :阿然成长日记 👈点击可跳转
📆 个人专栏: 🔹数据结构与算法🔹C语言进阶🔹C++
🚩 不能则学,不知则问,耻于问人,决无长进
🍭 🍯 🍎 🍏 🍊 🍋 🍒 🍇 🍉 🍓 🍑 🍈 🍌 🍐 🍍

文章目录

  • 前言:
  • 一、命令模式指令集
    • 1.移动光标
    • 2.复制粘贴
    • 3.删除
    • 4.撤销
    • 5.替换
    • 6.大小写切换
  • 二、末行模式指令集
    • 1.==「set nu / set nonu」 —— 代码前的行号==
    • 2.==#跳到文件中的某一行==
    • 3.==查找字符==
    • 4.==替换字符==
    • 5.==保存及退出vim==
    • 6.==不退出vim进行相关指令操作==
    • 7.==分屏编写工程==
  • 三、可视模式指令集
  • 四、替换模式指令集

前言:

前面讲解了vim的功能作用已经配置vim。本篇博客讲解vim的各种指令

一、命令模式指令集

1.移动光标

通常我么都是使用鼠标指哪写拿,但是vim中却不行。

vim可以直接用键盘上↑↓←→来进行移动移动,但正规的是

按「h」
按「j」
按「k」
按「l」

在这里插入图片描述

按「 $ 」移动到光标所在行的“行尾”【shift + 4】
按「^」移动到光标所在行的“行首”【shift + 6】
按「w」光标跳到下个字的开头
按「b」光标回到上个字的开头
按「e」光标跳到下个字的字尾
按「#l」光标移到该行的第#个位置,如:5l,56l
按[gg]进入到文本开始
按[G]进入文本末端【shift + g】
按「ctrl」+「b」屏幕往“后”(上)移动一页
按「ctrl」+「f」屏幕往“前”(下)移动一页
按「ctrl」+「u」屏幕往“后”(上)移动半页
按「ctrl」+「d」屏幕往“前”(下)移动半页

2.复制粘贴

「yw」将光标所在之处到当前字尾的字符复制到缓冲区中。
「#yw」复制#个字到缓冲区
「yy」复制光标所在行到缓冲区。
「#yy」例如,「5yy」表示拷贝从光标所在的该行“往下数”5行文字【包括光标所在行】
「p」将缓冲区内的字符贴到光标所在位置这一行的下一行。
「#p」例如,「5p」表示拷贝从光标所在的该行“往下数”5行文字。【包括光标所在行】

在这里插入图片描述

❗注意:所有与“y”有关的复制命令都必须与“p”配合才能完成复制与粘贴功能。

3.删除

「x / #x」删除光标所在位置的一个字符或#个字符,包括自己【左侧 ——> 右侧】
「X / #X」删除光标所在位置的一个字符或#个字符,包括自己【左侧 ——> 右侧】
「#x」例如,「6x」表示删除光标所在位置的“后面”6个字符【包含自己在内】
「#X」例如,「20X」表示删除光标所在位置的“前面”20个字符【不包含自己在内】
「dd」删除光标所在行
「#dd」删除光标所在行开始向下#行【包括当前行】
执行「p / #p」就可以达到裁剪的效果
若是只进行「dd / #dd」的话就只进行删除行的操作了

4.撤销

「u」如果您误执行一个命令,可以马上按下「u」,回到上一个操作。按多次“u”可以执行多次复原。【相当于Windows下的ctrl + z】
「ctrl + r」撤销的恢复【相当于Windows下的ctrl + y】

5.替换

「r」:替换光标所在处的字符
「R」:替换光标所到之处的字符,直到按下「ESC」键为止【相当于替换模式】

6.大小写切换

~【shift + `】

二、末行模式指令集

shift+:即可进入末行模式

1.「set nu / set nonu」 —— 代码前的行号

在这里输入指令:
在这里插入图片描述

在这里插入图片描述

2.#跳到文件中的某一行

直接在:后输入对应的行号,按下回车键即可跳转到对应行。

  • 例如:5,然后按下Enter回车键,即可立马跳转到5行的第一个字符位置
    在这里插入图片描述

3.查找字符

1️⃣ 「/关键字」 —— 先按「/」键,再输入您想寻找的字符,如果第一次找的关键字不是您想要的,可以一直按「n」会往后寻找到您要的关键字为止
2️⃣ 「?关键字」 —— :先按「?」键,再输入您想寻找的字符,如果第一次找的关键字不是您想要的,可以一直按「n」会往前寻找到您要的关键字为止

在这里插入图片描述

4.替换字符

格式:「%s/替换前的字符串/替换后的字符串/g

  • %s可以看成是C语言中字符串的格式声明符,g代表[global]整体的

在这里插入图片描述

5.保存及退出vim

「q」直接退出
「q!」强制退出
「w」保存
「wq」保存并退出
「wq!」保存并强制退出

6.不退出vim进行相关指令操作

语法:「! + 指令」 —— 在任何指令前加个【!】即可

也就是说在vim中,可以执行在vim之外的一些指令操作。
例如:ls查看当前目录下的

在这里插入图片描述

7.分屏编写工程

[vs 文件名]创建文件
[ctrl + ww]切换光标到不同的界面
[q!]强制退出当前光标所在文件,不保存
[wq]保存并退出当前文件

在这里插入图片描述

三、可视模式指令集

在可视模式下,比较常用的一条指令就是多行注释,放在这里将是因为它要配合【命令模式】和【底行模式】一起使用

🚩如何进行批量注释等可以看我这篇博客:如何使用vim进行批量注释👈

四、替换模式指令集

【shift+r】进入替换模式:屏幕左下角出现REPLACE字样,说明你已经处于替换模式。此时输入字符可以连续替换光标及其后边的内容。

  • 作用:输入并替换光标当前所处位置元素。

在这里插入图片描述

补充:退格键(Backspace) 在该模式下使用退格键

  • 若是该字符在替换模式中被解释为如果左边的内容被替换过,则恢复到原来的样子;
  • 若是没有被替换过,则简单的向左移动。修改完毕后,按下Esc键回到普通模式

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

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

相关文章

Pygame经典游戏:贪吃蛇

------------★Pygame系列教程★------------ Pygame经典游戏:贪吃蛇 Pygame教程01:初识pygame游戏模块 Pygame教程02:图片的加载缩放旋转显示操作 Pygame教程03:文本显示字体加载transform方法 Pygame教程04:dra…

Swagger转换成Excel文件

1、添加swagger解析依赖包&#xff1a; <dependency><groupId>io.swagger.parser.v3</groupId><artifactId>swagger-parser</artifactId><version>2.1.12</version></dependency>2、示例代码&#xff1a; package com.rlclou…

常见漏洞原理简介

今天复习上个月学的漏洞的知识点。 一、SQL注入漏洞 sql注入是就是通过把SQL语句插入到Web表单提交或输入域名或页面请求的查询字符串&#xff0c;最终达到欺骗服务器执行恶意的SQL命令。 理解这张图就可以理解sql注入的原理&#xff0c;因为在mysql数据库中存在一个Informat…

vim中如何进行批量注释?取消批量注释?

1.首先进入vim的命令模式。然后按【ctrlV】 2.按下【J】,可以向下继续选中。 3.选择完成后&#xff0c;直接按下【shifti】进入插入模式。输入【//】&#xff0c; 4.最后按【ESC】即可进行批量注释。 取消注释又是如何操作的呢&#xff1f; 前面的步骤都一样&#xff0c;首先…

算法100例(持续更新)

算法100道经典例子&#xff0c;按算法与数据结构分类 1、祖玛游戏2、找下一个更大的值3、换根树状dp4、一笔画完所有边5、树状数组&#xff0c;数字1e9映射到下标1e56、最长回文子序列7、超级洗衣机&#xff0c;正负值传递次数8、Dijkstra9、背包问题&#xff0c;01背包和完全背…

1.9 数据结构之 并查集

编程总结 在刷题之前需要反复练习的编程技巧&#xff0c;尤其是手写各类数据结构实现&#xff0c;它们好比就是全真教的上乘武功 本栏目为学习笔记参考&#xff1a;https://leetcode.cn/leetbook/read/disjoint-set/oviefi/ 1.0 概述 并查集&#xff08;Union Find&#xff09…

5、LMDeploy 量化部署 LLMVLM实战(homework)

基础作业&#xff08;结营必做&#xff09; 完成以下任务&#xff0c;并将实现过程记录截图&#xff1a; 配置lmdeploy运行环境 由于环境依赖项存在torch&#xff0c;下载过程可能比较缓慢。InternStudio上提供了快速创建conda环境的方法。打开命令行终端&#xff0c;创建一…

SENet模型原理及代码介绍

一.模型简介&#xff1a; SENet的全称叫Squeeze-and-Excitation Networks&#xff08;挤压-激励网络&#xff0c;简称SENet&#xff09;&#xff0c;于2017年提出&#xff0c;并拿下了当年的ImageNet分类比赛的冠军。ResNet是2015年ImageNet的冠军&#xff0c;2016年ResNeXt&am…

字节码文件的组成

字节码文件的组成 字节码文件的组成1 以正确的姿势打开文件2 字节码文件的组成2.1 基本信息2.2 常量池2.3 字段2.4 方法2.5 属性 3 字节码常用工具3.1 javap3.2 jclasslib插件3.3 Arthas 4 字节码常见指令 字节码文件的组成 1 以正确的姿势打开文件 字节码文件中保存了源代码…

构建BTI的编译工具支持

BTI分支目标识别精讲与实践系列 思考 1、什么是代码重用攻击&#xff1f;什么是ROP攻击&#xff1f;区别与联系&#xff1f; 2、什么是JOP攻击&#xff1f;间接分支跳转指令&#xff1f; 3、JOP攻击的缓解技术&#xff1f;控制流完整性保护&#xff1f; 4、BTI下的JOP如何…

MCU最小系统的电源模块设计和复位模块的设计

最小操作系统就是一个电路&#xff0c;这个电路里面必须要的东西&#xff08;如人需要喝水吃饭温度等情况&#xff0c;才能或者&#xff09; 现在我们要解决这三个问题 这里V开头的&#xff0c;都是电源管脚 这里解释一下&#xff1a; 这里要注意哪些是电路电压&#xff0c;哪…

【300套】基于Springboot+Vue的Java毕业设计项目(附源码+演示视频+LW)

大家好&#xff01;我是程序猿老A&#xff0c;感谢您阅读本文&#xff0c;欢迎一键三连哦。 &#x1f9e1;今天给大家分享300的Java毕业设计&#xff0c;基于Springbootvue框架&#xff0c;这些项目都经过精心挑选&#xff0c;涵盖了不同的实战主题和用例&#xff0c;可做毕业…

考研高数(对比一元微分学和一元积分学概念)

1.一元微分学的概念和一元积分学的概念 一元微分 1.导数 函数一点可导的充要条件&#xff1a;左右导数均存在且相等&#xff08;也可说左右极限存在且相等&#xff09; 函数一点可导的必要条件&#xff1a;若f(x)在一点可导&#xff0c;则f(x)在该点连续。反之未必。 2.导数…

如何进行计量经济分析

计量经济分析是定量分析的常用方法&#xff0c;在经济分析领域有着广泛且重要的应用。计量经济分析以一定的经济理论和统计数据为基础&#xff0c;运用数学、统计学相关方法&#xff0c;通过建立计量模型&#xff0c;并运用软件进行操作&#xff0c;从而实现对经济问题的定量分…

day57 判断子序列 不同的子序列 两个字符串的删除操作 编辑距离

题目1 392 判读子序列 题目链接 392 判断子序列 题意 判断字符串s是否为字符串t的子序列 &#xff08;子序列的相对位置在原字符串中不改变&#xff09; 就是求最长公共子序列的长度与字符串s的长度是否相等 动态规划 1&#xff09;确定dp数组及下标i的含义 dp[i][j]…

视频知识整理

1 视频播放器原理 视频播放器播放一个互联网上的视频文件&#xff0c;需要经过以下几个步骤&#xff1a; 解协议&#xff1a;将流媒体协议的数据&#xff0c;解析为标准的相应的封装格式数据 解封装&#xff1a;将封装格式的数据&#xff0c;分离成为音频流压缩编码数据和视…

【ESP32使用MAX98357播放音频】

【ESP32使用MAX98357播放音频】 1. 前言2. 先决条件2.1 硬件准备2.2 软件准备2.3 接线3. 核心代码3.1 驱动实现3.2 代码解析4. 播放音乐5. 结论1. 前言 在物联网和智能家居领域,音频播放功能越来越受到重视。ESP32作为一款功能强大的微控制器,结合MAX98357音频放大器模块,可…

Java入门教程||Java 变量

Java 变量 Java教程 - Java变量 变量由标识符&#xff0c;类型和可选的初始化程序定义。变量还具有范围&#xff08;可见性/生存期&#xff09;。 Java变量类型 在Java中&#xff0c;必须先声明所有变量&#xff0c;然后才能使用它们。变量声明的基本形式如下所示&#xff1…

CVPR 2024 | 仅需文本或图像提示,新框架CustomNeRF精准编辑3D场景

ChatGPT狂飙160天&#xff0c;世界已经不是之前的样子。 新建了免费的人工智能中文站https://ai.weoknow.com 新建了收费的人工智能中文站https://ai.hzytsoft.cn/ 更多资源欢迎关注 美图影像研究院&#xff08;MT Lab&#xff09;与中国科学院信息工程研究所、北京航空航天大…

AutoGen - Build Powerful AI Agents with ChatGPT/GPT-4

原文:AutoGen - Build Powerful AI Agents with ChatGPT/GPT-4 | MLExpert - Crush Your Machine Learning interview In this tutorial, well explore AutoGen1, a Microsoft library that lets you create LLM applications with agents. These agents can communicate and …