Linux — vim编辑器的操作

news2024/12/22 23:02:27

目录

  • 1. vim的整体操作
  • 2. 命令模式下的常见命令
  • 3. 底行模式下的常见命令
  • 结语

1. vim的整体操作

在这里插入图片描述
我们使用 touch 创建一个文件之后,直接 vim 文件名 就能够进入到vim编辑器中。如果vim 文件名的文件还不存在时,vim会自动创建该文件,但需要保存退出,该文件才会存在。

vim 编辑器主要分为三大模式: 1、命令模式     
              2、插入模式
              3、底行模式

只有进入插入模式,我们才能够在 vim 中输入,而 vim 编辑器的默认模式为命令模式,在命令模式下,按 i 即可转为插入模式,而从插入模式返回命令模式,只需要按键盘左上角的 Esc 键。命令模式下按 :即可转为底行模式(:即 shift键 + ; ),返回也是按 Esc 键。

一张图总结他们的关系:
在这里插入图片描述

当我们想要退出编辑器时,可以进入底行模式,然后输入 q 回车即可,保存输入w,保存退出输入wq,而当有时候退出失败或者保存失败时,我们可以在后面 加上 !,即 q! 或者 w!


2. 命令模式下的常见命令

yy 				复制当前光标所在行
p 				将所复制内容进行粘贴
nyy				从当前光标所在行,向下复制 n 行(n为具体数字)
np 				将所复制内容粘贴 n 遍(n为具体数字)
dd				将光标当前所在行进行剪切(或者删除,剪切完 p 就是粘贴)
ndd				与 nyy 类似
u	 			撤销操作
ctrl + r 		撤销 u 操作(即撤销上一次撤销的这个动作)
shift + g		将光标定位到文本的结尾
gg				将光标定位到文本的最开始位置
n + shift + g	将光标定位到 n 行(n为具体数字)
shift + 6		将光标定位当前行的最开始
shift + 4		将光标定位当前行的结尾
w,b				以单词为单位进行光标的前后移动
h,j,k,l			依次对光标的左,下,上,右移动
shift + ~ 		将光标当前定位行的文本进行大小写切换
shift + r		进入替换模式
r				替换当前光标所在的字符,可连续替换
nr				替换当前光标往后 n 个位置的字符
x				删除当前光标所在的字符,可连续删除
nx				与 nr 相似
shift + x		删除当前光标前面的字符,可连续删除

3. 底行模式下的常见命令

set no			显示行号
set nonu		取消显示行号
vs 文件名		分配操作(在分配模式下,shift + ww 可将光标在不同文件中来回切换)
w				写入
w!				强制写入
q				保存
q!				强制保存
!cmd			不退出vim编辑器执行对于的命令(cmd为标识的具体命令,如:g++ 文件名)
				可用于执行命令行,编译,运行,查看 man 手册等等。

结语

以上就是vim编辑器的常见命令操作。如果该文章能给你带来一定的帮助,或者是收获,我很开心。
同时,觉得对你有帮助的伙伴们,也可以 点赞👍 + 收藏⭐️ + 关注➕ 支持一下!
感谢各位观看!!

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

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

相关文章

中山大学计算机学院2024届推免拟录取及分析

拟录取名单: 分析 中山大学计算机学院2023年共录取推免生245人,其中 计算机科学与技术(学硕)录取245人,计算机技术(专硕)录取58人,计算数学录取11人。 很明显可以看出,学…

C++笔记-RTTR编译安装简单使用

这里以Linux为例,我使用的机器的gcc版本是4.9.2 使用的RTTR的版本是0.9.5 编译&安装 首先在官网将rttr的0.9.5版本下载下来。 Home |RTTR 按照官方的安装流程: 但这里可能会出现一个问题: 按照解答,切换成root用户&#x…

医学手术麻醉临床信息系统源码

手术麻醉临床信息系统遵循“以病人为中心、服务于临床”的宗旨,使医护人员从繁琐的病历书写中解放出来,集中精力关注病人的诊疗,将更多的时间用于分析、诊断。以服务围术期临床业务工作的开展为核心,为医护人员、业务管理人员、院…

高级工技能等级认定---网络设备安全

目录 一、DHCP 安全配置 二、SSH配置 三、标准ACL的配置 四、配置交换机端口安全 五、三层交换和ACL的配置 一、DHCP 安全配置 配置要求: 1.给交换机配置enable密码. 2.在交换机上创建VLAN 100,将F0/1-3口改为Access口,并加入到VLAN …

【LeetCode刷题-哈希】--706.设计哈希映射

706.设计哈希映射 class MyHashMap {private class Pair{private int key;private int value;public Pair(int key ,int value){this.key key;this.value value;}public int getKey(){return key;}public int getValue(){return value;}public void setValue(int value){this…

Win10安装WSL2和ubuntu

目录 一、win10系统设置 二、安装WSL 三、win10中ubuntu迁移到D盘 四、在vscode中访问ubuntu 在win10中安装WSL2虚拟机,然后安装ubuntu,最后使用vscode连接ubuntu。教程适用于: ubuntu22.04ubuntu20.04ubuntu18.04 一、win10系统设置 …

大型微服务架构智慧工地云平台源码(SaaS模式)

智慧工地云平台建设是采用先进的移动互联、物联网、云计算、大数据等新一代信息技术,主要由信息采集层、网络接入层、网络传输层、信息储存与处理层组成,主要包括云管理平台、综合管理系统、质量管理系统、安全管理系统等模块。施工管理人员可通过PC端&a…

欧姆龙PLC与上位机通讯说明

欧姆龙PLC与上位机连接时一般采用的是Hoslink协议,它是一种简易经济的通讯方式,比较适合一台上位机和一台PLC或者多台PLC进行通讯。上位机可对漂亮C进行程序传送和读写等操作。HOSTLINK系统允许一台上位机通过上位机链接命令向HOSTLINK系统的PLC发送命令…

MyBatis-Plus 实战教程三 拓展插件

文章目录 扩展功能代码生成安装插件使用 静态工具逻辑删除通用枚举定义枚举配置枚举处理器测试 JSON类型处理器定义实体使用类型处理器 仓库地址 扩展功能 代码生成 在使用MybatisPlus以后,基础的Mapper、Service、PO代码相对固定,重复编写也比较麻烦。…

鸿蒙开发第一步-入门

本人安卓开发小趴菜一枚,在现公司做中控产品,目前通过 Java,Kotlin开发,但是随着后面可能会用到华为产品(后续华为可能不支持安卓)做中控设备,所以在领导的建议下,入手鸿蒙开发。 先说下中控产品吧,以pad开…

线扫相机DALSA-相机平场矫正详细步骤

在相机视野下铺放白色亚克力板或纯白纸,采集图像。打开曲线图。 选择 Line Profile 模式。调节好相应所需的曝光时间、光源、增益和镜头光圈,让白平衡纸显示出来的灰度值大概在 150-200 左右。 在Calibration Algorithm 中将显示的数值设置好。 先暗场…

NodeJS回调地狱及Promise优化

NodeJS中有很多异步API,比如常见的fs模块的readFile方法。虽然有同步的版本readFileSync, 但是其性能肯定不如前者。所以这里从异步异步版本readFile说起: const fs require(fs);fs.readFile(./a.txt, utf-8, function(error, data) {if (!error) {console.log(a.…

目标检测理论知识

目标检测 1.基本概念 目标检测(Object Detection)的任务是找出图像中所有感兴趣的目标(物体),确定它们的类别和位置,是计算机视觉领域的核心问题之一。由于各类物体有不同的外观、形状和姿态,…

【Linux】深入理解系统文件操作(1w字超详解)

1.系统下的文件操作: ❓是不是只有C\C有文件操作呢?💡Python、Java、PHP、go也有,他们的文件操作的方法是不一样的啊 1.1对于文件操作的思考: 我们之前就说过了:文件内容属性 针对文件的操作就变成了对…

AI:43-基于深度学习的昆虫图像识别

🚀 本文选自专栏:AI领域专栏 从基础到实践,深入了解算法、案例和最新趋势。无论你是初学者还是经验丰富的数据科学家,通过案例和项目实践,掌握核心概念和实用技能。每篇案例都包含代码实例,详细讲解供大家学习。 📌📌📌本专栏包含以下学习方向: 机器学习、深度学…

AI:42-基于机器学习方法下以沙发为例的家具风格识别技术研究

🚀 本文选自专栏:AI领域专栏 从基础到实践,深入了解算法、案例和最新趋势。无论你是初学者还是经验丰富的数据科学家,通过案例和项目实践,掌握核心概念和实用技能。每篇案例都包含代码实例,详细讲解供大家学习。 📌📌📌本专栏包含以下学习方向: 机器学习、深度学…

【AD9361 数字接口CMOS LVDSSPI】C 并行数据 LVDS <续>

续【AD9361 数字接口CMOS &LVDS&SPI】C 并行数据之LVDS 不同于CMOS的传输方式,lvds只能工作在双端口全双工模式下。 一、 双端口全双工模式 (LVDS)代称 DFL DUAL PORT FULL DUPLEX MODE DFL 模式通过写入SPI寄存器实现。在此模式下…

html+js+css实现一个圆形滑块

htmljscss实现一个圆形滑块,可以拖动,可以点击,先看效果再讲原理,最后附上源码: 产品经理设计了这样一个需求,通过拖动圆形滑块实现时间的设置功能,虽然看着有点复杂,但是确实有点复…

vite+vue3实现 tomcat 的本地部署

背景: 很多开发小伙伴在本地开发完前端项目后,碍于服务端环境配置麻烦,想先试试在本地部署,已开发好的前端项目,由于很多文章都是文字性描述,不太直观,为了给大多数新手提供一个教程&#xff0c…

Agent 应用于提示工程

如果Agent模仿了人类在现实世界中的操作方式,那么,能否应用于提示工程即Prompt Engingeering 呢? 从LLM到Prompt Engineering 大型语言模型(LLM)是一种基于Transformer的模型,已经在一个巨大的语料库或文本数据集上进行了训练&…