Linux入门3——vim的简单使用

news2024/10/9 17:37:05

1.vim

1.1 vim的模式

vim有三种主要模式:

①命令模式:使用vim刚打开进入的模式就是命令模式;

②插入模式:只有在插入模式下才可以做文字输入,按[Esc]键可退回命令模式;

③末行模式:文件保存或退出,也可以进行文件替换,找字符串,列出行号等操作。在命令模式下,按[shift]+[:](即英文状态下的[:]键) 即可进入该模式。

图解三种模式之间的切换:

一些见解:在vs编译器里我们可以用鼠标选中任意代码,可是在Linux下鼠标并不起作用。

所以命令模式我们就可以简单理解为:其相当于我们用vs编译器鼠标选中任意代码进行注释、去注释、批量复制粘贴等一系列操作的过程;插入模式就相当于我们完完全全用键盘输入字符的过程。

 1.2 vim的基本命令

1. 命令模式

我们刚开始使用 vim test.c 命令进入的模式就是命令模式:

基本操作 

①按 [i/o/a] 键进入插入模式,按 [Esc] 回到命令模式

②按 [:] 键进入底行模式。

 移动光标

③h、j、k、l分别对应左、下、上、右光标移动一格;

(w——往后移动,一次移动一个单词;b——往前移动,一次移动一个单词)

键盘的↑↓←→键也能实现光标的上下左右移动是因为早期的键盘并没有这四个键。

④ [G] ——光标移动到文本最后 ;

⑤ [$] ——移动到光标所在行的“行尾”;

⑥ [^] ——移动到光标所在行的行首;

⑦ [w]——光标跳到下个字(单词)的开头;

⑧ [e]——光标跳到下个字(单词)的字尾;

⑨ [b]——光标回到上个字(单词)的开头;

⑩ [nl]——(n为数字)光标移到该行的第n个位置,如:5l,56l;

⑪ [gg]——光标移到文本开始;

⑫ [G]——光标移到文本末端;

⑬ [Ctrl]+[b]——屏幕往“后”移动一页;

⑭ [Ctrl]+[f]——屏幕往“前”移动一页;

⑮ [Ctrl]+[u]——屏幕往“后”移动半页;

⑯ [Ctrl]+[d]——屏幕往“前”移动半页;

 删除文字

①[x]——每按一次,删除光标所在位置的一个字符;

②[nx]——(n为数字)例如,[6x]表示删除光标所在位置的“后面(包含自己在内)”6个字符;

③[X]——大写的X,每按一次,删除光标所在位置的“前面”一个字符;

④[nX]——(n为数字)例如,[6X]表示删除光标所在位置的“前面”6个字符;

⑤[dd]——删除光标所在行 ;

⑥[ndd]——(n为数字)从光标所在行开始删除n行;

复制粘贴

①[yw]——将光标所在之处到字尾的字符复制到缓冲区中(复制一个单词);

②[nyw]——复制n个单词到缓冲区;

③[yy]——复制光标所在行到缓冲区;

④[nyy]——例如,「6yy」表示拷贝从光标所在的该行“往下数”6行文字;

⑤[p]——将缓冲区内的字符贴到光标所在位置。

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

替换 

①[r]+[x]——(x为任意字符)将光标所在处的字符替换为[x];

②[n]+[r]+[x]——(n为数字,x为任意字符)将光标所在处之后的n个字符替换为x;

③[R]——进入替换模式,任意替换光标所在位置的字符,直到按下[Esc]回到命令模式;

撤销上一次操作

①[u]——撤销上一次操作;

②[Ctrl]+[r]——对撤销进行撤销;

跳至指定的行

①[ctrl]+[g]——列出光标所在行的行号;

②[nG]——例如:[3G]表示移动光标至文本的第15行行首;

2. 末行模式

①[set nu]——输入[set nu]后,会在文件中的每一行前面列出行号([set nonu]取消行号);

②[n]——n表示数字,输入数字再按[Enter]键光标就会跳到该行;

③[/ 关键字]——先按[/]键,再输入需要寻找的字符,如果第一次找的关键字不是我们需要的,一直按[n]会往后寻找,直到找到为止;

④[? 关键字]——作用与[/ 关键字]相似,区别在于[/ 关键字]按[n]之后,光标逐级往下寻找,[? 关键字]按[n]之后,光标逐级往上寻找。

⑤[w]——保存文件;

⑥[q]——退出,如果无法离开vim,可以在[q]后跟一个[!]强制离开vim;

⑦[wq]——保存并退出,一般此键最常用;

⑧[vs+文件名]——可以实现屏幕同时出现多个文件,光标所在哪个文件,此时就正在编辑哪个界面;按[Ctrl+ww]实现光标在多个文件之间的跳转;

3.批量化注释与批量化去注释

①[Ctrl+v]进入VISUAL BLOCK模式-->②[h/j/k/l]进行区域选择-->③[I]进入插入模式-->④[//]输入//注释-->⑤[Esc]退出插入模式,此时即可实现选中区域的批量化注释;

①[Ctrl+v]进入VISUAL BLOCK模式-->②[h/j/k/l]进行区域选择-->③[d]删除注释,此时即可实现选中区域的批量化去注释;

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

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

相关文章

希亦超声波清洗机值得购买吗?清洁技术之王多维度测评大揭秘!

随着人们生活质量的提升,高质量眼镜愈发受到欢迎,但它们的清洁与保养却常常被疏忽,导致镜片蒙尘受损,影响佩戴者的视觉清晰度。为此,超声波眼镜清洗机作为一种新兴潮流应时而生,以其高效清洁眼镜及珠宝、精…

行盒的截断样式 box-decoration-break

1. 场景举例 当我们遇到如下场景时, 很多小伙伴可能会直接为这段文字添加边框和背景颜色,但往往会发现,效果并不如预期。出现的问题如下图所示,那么该如何解决呢? 这时就需要引入一个非常实用的 CSS 属性——box-deco…

元宇宙展厅的展示方式有哪些?

元宇宙展厅的展示方式多种多样,融合了虚拟现实以及多媒体交互等先进技术,为参观者提供了前所未有的沉浸式体验。以下是一些主要的展示方式: 1、虚拟现实(VR)展示: 利用VR技术,观众可以身临其境…

开关 switch

<el-table-column label"公开 | 隐藏" align"center" width"100"><template slot-scope"scope"><el-switchv-model"scope.row.dynamicStatus":active-value"1":inactive-value"0"active…

Windows11下 安装 Docker部分疑难杂症(Unexpecter WSL error)

装了大半天Docker desktop终于装好了&#xff0c;网上有的主流教程就不复述了&#xff0c;主要说一下网上没有的教程。 以下是遇到的问题&#xff1a; 首先&#xff0c;启用或关闭Windows确保里面与虚拟机有关的几个都要选上 没有Hyper-V参考此文 但是我这里都勾选了&#x…

多电源上电时序控制

多电源上电时序控制 我们如何给这种比如说有三个电源轨道&#xff0c;有这种上电时序先后次序要求的这种器件供电呢&#xff1f;那我们有大概以下几种方法。 1.直接使用前一时序电源的输出Vout做下一时序电源的使能EN 优点:简单&#xff0c;直观&#xff0c;成本低 缺点:要关…

电力电子技术03 AC-DC整流器(2)---单相半波整流器 二极管不控整流

半波整流器是一种简单的AC-DC整流电路&#xff0c;它将输入的交流电&#xff08;AC&#xff09;的一半&#xff08;正或负半周期&#xff09;转换为直流电&#xff08;DC&#xff09;。这种电路利用二极管的单向导电特性&#xff0c;在正半周期时允许电流通过&#xff0c;而在负…

75.【C语言】文件操作(2)

承接74.【C语言】文件操作(1)文章 目录 5.详细阐释文件的打开和关闭 1.流 2.标准流 3.文件指针 FILE 两层含义 附:FILE的头文件 4.操作文件的步骤 1.fopen函数 ​编辑 简写的全称查询 输入&输出的含义 2.fclose函数 3.代码示例 补充:绝对路径和相对路径 注意…

No.14 笔记 | XSS漏洞:原理、类型与防御策略

一、HTML和JavaScript基础 1. HTML基础 HTML概述&#xff1a;超文本标记语言&#xff0c;用于实现页面跳转和显示数据。结构标准&#xff1a;包括<!doctype html>声明文档类型&#xff0c;<html>根标签&#xff0c;<head>头部标签和<body>主体标签等。…

Markdown 语法详解大全(超级版)(四)——Markdown 使用 Emoji 表情 (附:表情符号简码列表)

Markdown 语法详解大全(超级版)&#xff08;四&#xff09; ——Markdown 使用 Emoji 表情 &#xff08;附&#xff1a;表情符号简码列表&#xff09; 本文目录&#xff1a; 一、复制和粘贴表情符号 二、使用表情符号简码 三、表情符号简码列表 本系列文章&#xff1a; Ma…

阿里云CDN设置阀值的指南

在如今这个信息爆炸的时代&#xff0c;网站的访问速度和用户体验变得尤为重要。阿里云CDN&#xff08;内容分发网络&#xff09;作为一种高效的解决方案&#xff0c;帮助用户加速网站内容的分发。然而&#xff0c;如何合理设置CDN的阀值&#xff0c;确保资源的高效利用&#xf…

【有啥问啥】深度探索:COG Agent与GUI Agent的工作原理与实施策略

深度探索&#xff1a;COG Agent与GUI Agent的工作原理与实施策略 在当今的数字化时代&#xff0c;图形用户界面&#xff08;GUI&#xff09;已经成为人机交互的主流。然而&#xff0c;传统依赖于文本或代码解析的GUI自动化方法在面对复杂多变的界面时常常显得力不从心。无论是…

工业交换机的安全机制

在当今信息技术迅速发展的时代&#xff0c;工业交换机作为网络通信的重要设备&#xff0c;其安全机制愈发受到重视。工业交换机的安全性不仅关乎企业的信息保护&#xff0c;更是整个工业网络运行稳定性的基石。为了确保数据传输的安全和网络的可靠性&#xff0c;现代工业交换机…

linux程序说明

Linux 文件和目录管理命令 文件和目录 cd 切换目录 cd [目录路径]&#xff1a;进入指定的目录。 cd ~ 进入当前用户的主目录。 cd - 返回上一次所在的目录。 cd .. 进入上级目录。 cd / 进入根目录。 cd ../.. 进入上上级目录。 cd /目录路径&#xff1a;进入指定的根目录中…

如何防止图纸外泄?图纸防泄密的六个方法(图纸安全管理措施)

图纸&#xff0c;作为企业技术和设计的结晶&#xff0c;一旦外泄&#xff0c;可能造成不可估量的损失。 如何有效防止图纸外泄&#xff0c;成为企业在信息安全管理中的重要环节。 下面我们将通过六个有趣又实用的方法&#xff0c;帮助你轻松实现图纸的安全管理。 1. 安企神系…

人脸表情行为识别系统源码分享

人脸表情行为识别系统源码分享 [一条龙教学YOLOV8标注好的数据集一键训练_70全套改进创新点发刊_Web前端展示] 1.研究背景与意义 项目参考AAAI Association for the Advancement of Artificial Intelligence 项目来源AACV Association for the Advancement of Computer Vis…

PCL 计算点云AABB包围盒(惯性矩阵)

目录 一、概述 1.1原理 1.2实现步骤 1.3应用场景 二、代码实现 2.1关键函数 2.1.1 计算AABB包围盒 2.1.2 可视化点云与AABB包围盒 2.2完整代码 三、实现效果 PCL点云算法汇总及实战案例汇总的目录地址链接&#xff1a; PCL点云算法与项目实战案例汇总&#xff08;长…

从0打造本地聊天机器人:如何实现大模型流式输出?OpenAI+Ollama 实战

尽管有了 GPU 加持&#xff0c;推理速度依然很慢&#xff0c;怎么搞&#xff1f; 流式输出&#xff01; 相比全部生成后再输出&#xff0c;流式输出生成一句就播报一句&#xff0c;大大减少了用户的等待时间。 主流大模型推理 API 包括&#xff1a; OpenAI 格式&#xff1a…

史上最浅显易懂Python教程,138页学习笔记,35个知识点一文掌握

这份笔记的目标是为了给出一份比较精炼&#xff0c;但是又要浅显易懂的Python教程。《Python学习手册》中文第四版虽然比较简单&#xff0c;但是措辞比较罗嗦&#xff0c;而且一个语法点往往散落在多个章节&#xff0c;不方便读者总结。 我在做笔记时&#xff0c;将一个知识点…

数字王国里的虚拟人――技术、商业与法律解读

&#x1f482; 个人网站:【 摸鱼游戏】【神级代码资源网站】【海拥导航】&#x1f91f; 找工作&#xff0c;来万码优才&#xff1a;&#x1f449; #小程序://万码优才/HDQZJEQiCJb9cFi&#x1f485; 想寻找共同学习交流&#xff0c;摸鱼划水的小伙伴&#xff0c;请点击【全栈技…