vim常用操作命令-程序员宅基地

技术标签: 编辑器  Linux  linux  vim  

目录

1. vim介绍

软件安装

CentOS:

Ubuntu:

2. vim常用操作命令

普通模式(Normal Mode)

光标移动

删除文本

复制和粘贴

撤销和重做

查找内容

文本移动

插入模式(Insert Mode)

进入编辑模式

退出编辑模式

命令行模式(Command-Line Mode)

保存文件

搜索替换

可视模式(Visual Mode)

进入可视模式

选择文本

复制和剪切

替换和删除

缩进和反向缩进

搜索和替换

取消选择


1. vim介绍

Vim是一种文本编辑器,它是Unix和类Unix操作系统上的一种常用编辑器。它的特点是高度可定制、功能强大,以及可以通过键盘快捷键进行操作。Vim是Vi编辑器的改进版本,Vi是Unix系统中最早的文本编辑器之一。Vim支持语法高亮、多窗口编辑、插件扩展等功能,被广泛用于软件开发、系统管理等领域。

软件安装

CentOS:

终端中输入以下命令并按下 Enter 键:

sudo yum install vim -y

-y 参数的作用是在安装过程中自动应答所有提示,无需手动确认。

Ubuntu:

运行命令:

sudo apt install vim -y

2. vim常用操作命令

Vim 是一个功能强大的文本编辑器,它提供了许多操作命令来编辑文本文件。以下是一些 Vim 的常用操作命令:

普通模式(Normal Mode)

在普通模式下(即用vim命令打开文件后首次进入的模式),键盘输入被解释为命令,而不是输入文本。这个模式下你可以移动光标、删除、复制、粘贴、查找等操作,也可以切换到其他模式。

光标移动

k: 向上移动一行。

j: 向下移动一行。

h: 向左移动一个字符。

l: 向右移动一个字符。

0(零): 移动到行首。

$: 移动到行尾。

shift+6 (^): 移动到行首。 

gg: 移动到文件的第一行

数字+G: 回到指定行。

G: 移动到文件的最后一行。

ctrl+f:  下一屏。

ctrl+b:上一屏。

删除文本

x: 删除光标所在位置的字符。

dd: 删除当前行。

dw: 删除从当前位置到单词末尾的字符。

d$: 删除从当前位置到行尾的字符。

gg+d+G: 删除所有文本,按gg光标回到首行(如已在首行可忽略),d+G删除所有文本。

复制和粘贴

yy: 复制当前行。

yw: 复制从当前位置到单词末尾的字符。

p: 粘贴已复制的内容在光标后。

撤销和重做

u: 撤销上一次操作。

ctrl + r: 重做上一次被撤销的操作。

查找内容

/搜索的内容: 在文件中向前搜索关键字。

?搜索的内容: 在文件中向后搜索关键字。

文本移动

>>: 往右缩进。

<<: 往左缩进。

插入模式(Insert Mode)

也叫编辑模式,在插入模式下,你可以输入文本。当你按下 iao 等键时,Vim 会进入插入模式,允许你编辑文本。

进入编辑模式

i: 在当前光标位置之前插入文本。

shift+i (I): 在行首插入文本。

a: 在当前光标位置之后插入文本。

shift+a (A): 在行末插入文本。

o: 在当前行之后新建一行,并在新行中开始插入文本。

shift+o (O): 在当前行之前新建一行,并在新行中开始插入文本。

退出编辑模式

按下 Esc 键即可退出编辑模式,并回到命令模式。

命令行模式(Command-Line Mode)

在命令行模式下,你可以输入各种命令,比如保存文件、退出 Vim、执行搜索替换等。进入命令行模式通常是通过按下 : 键。

保存文件

:w: 将文件保存(写入)到磁盘,但不退出 Vim。

:wq:x: 保存文件并退出 Vim。

:q!: 强制退出 Vim,不保存修改(相当于放弃修改)。

搜索替换

:s/要替换的内容/替换后的内容/g: 当前行替换。

:开始行数,结束行数s/要替换的内容/替换后的内容:局部替换。

:%s/要替换的内容/替换后的内容/g: 全局替换。

可视模式(Visual Mode)

Vim 的可视模式是一种编辑模式,它允许你选择文本以便进行操作,如复制、剪切、替换等。在可视模式下,你可以通过移动光标来选择文本块,然后对选中的文本进行操作。

进入可视模式

v: 进入普通可视模式。

shift+v (V): 进入可视行模式。

ctrl + v: 进入可视块模式,通常用于操作矩形区域的文本。

选择文本

使用方向键或 hjkl 键移动光标以选择要操作的文本。

如果你想选择整行,只需按下 V 键。

如果你想选择文本块(例如矩形区域),可以使用 Ctrl + v 进入可视块模式。

复制和剪切

选择要复制或剪切的文本。

按下 y 键复制选中的文本,或者按下 d 键剪切选中的文本。

粘贴

将光标移动到你想要粘贴的位置。

按下 p 键将复制或剪切的文本粘贴到当前位置之后。

替换和删除

选择要替换或删除的文本。

按下 c 键进入插入模式,并替换选中的文本。

按下 x 键删除选中的文本。

缩进和反向缩进

选择要缩进或反向缩进的文本。

按下 > 键进行缩进,或者按下 < 键进行反向缩进。

搜索和替换

选择要搜索或替换的文本。

按下 : 进入命令行模式,并输入相应的搜索或替换命令。

取消选择

按下 Esc 键取消当前的文本选择。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_40483419/article/details/137840368

智能推荐

oracle 12c 集群安装后的检查_12c查看crs状态-程序员宅基地

文章浏览阅读1.6k次。安装配置gi、安装数据库软件、dbca建库见下:http://blog.csdn.net/kadwf123/article/details/784299611、检查集群节点及状态:[root@rac2 ~]# olsnodes -srac1 Activerac2 Activerac3 Activerac4 Active[root@rac2 ~]_12c查看crs状态

解决jupyter notebook无法找到虚拟环境的问题_jupyter没有pytorch环境-程序员宅基地

文章浏览阅读1.3w次,点赞45次,收藏99次。我个人用的是anaconda3的一个python集成环境,自带jupyter notebook,但在我打开jupyter notebook界面后,却找不到对应的虚拟环境,原来是jupyter notebook只是通用于下载anaconda时自带的环境,其他环境要想使用必须手动下载一些库:1.首先进入到自己创建的虚拟环境(pytorch是虚拟环境的名字)activate pytorch2.在该环境下下载这个库conda install ipykernelconda install nb__jupyter没有pytorch环境

国内安装scoop的保姆教程_scoop-cn-程序员宅基地

文章浏览阅读5.2k次,点赞19次,收藏28次。选择scoop纯属意外,也是无奈,因为电脑用户被锁了管理员权限,所有exe安装程序都无法安装,只可以用绿色软件,最后被我发现scoop,省去了到处下载XXX绿色版的烦恼,当然scoop里需要管理员权限的软件也跟我无缘了(譬如everything)。推荐添加dorado这个bucket镜像,里面很多中文软件,但是部分国外的软件下载地址在github,可能无法下载。以上两个是官方bucket的国内镜像,所有软件建议优先从这里下载。上面可以看到很多bucket以及软件数。如果官网登陆不了可以试一下以下方式。_scoop-cn

Element ui colorpicker在Vue中的使用_vue el-color-picker-程序员宅基地

文章浏览阅读4.5k次,点赞2次,收藏3次。首先要有一个color-picker组件 <el-color-picker v-model="headcolor"></el-color-picker>在data里面data() { return {headcolor: ’ #278add ’ //这里可以选择一个默认的颜色} }然后在你想要改变颜色的地方用v-bind绑定就好了,例如:这里的:sty..._vue el-color-picker

迅为iTOP-4412精英版之烧写内核移植后的镜像_exynos 4412 刷机-程序员宅基地

文章浏览阅读640次。基于芯片日益增长的问题,所以内核开发者们引入了新的方法,就是在内核中只保留函数,而数据则不包含,由用户(应用程序员)自己把数据按照规定的格式编写,并放在约定的地方,为了不占用过多的内存,还要求数据以根精简的方式编写。boot启动时,传参给内核,告诉内核设备树文件和kernel的位置,内核启动时根据地址去找到设备树文件,再利用专用的编译器去反编译dtb文件,将dtb还原成数据结构,以供驱动的函数去调用。firmware是三星的一个固件的设备信息,因为找不到固件,所以内核启动不成功。_exynos 4412 刷机

Linux系统配置jdk_linux配置jdk-程序员宅基地

文章浏览阅读2w次,点赞24次,收藏42次。Linux系统配置jdkLinux学习教程,Linux入门教程(超详细)_linux配置jdk

随便推点

matlab(4):特殊符号的输入_matlab微米怎么输入-程序员宅基地

文章浏览阅读3.3k次,点赞5次,收藏19次。xlabel('\delta');ylabel('AUC');具体符号的对照表参照下图:_matlab微米怎么输入

C语言程序设计-文件(打开与关闭、顺序、二进制读写)-程序员宅基地

文章浏览阅读119次。顺序读写指的是按照文件中数据的顺序进行读取或写入。对于文本文件,可以使用fgets、fputs、fscanf、fprintf等函数进行顺序读写。在C语言中,对文件的操作通常涉及文件的打开、读写以及关闭。文件的打开使用fopen函数,而关闭则使用fclose函数。在C语言中,可以使用fread和fwrite函数进行二进制读写。‍ Biaoge 于2024-03-09 23:51发布 阅读量:7 ️文章类型:【 C语言程序设计 】在C语言中,用于打开文件的函数是____,用于关闭文件的函数是____。

Touchdesigner自学笔记之三_touchdesigner怎么让一个模型跟着鼠标移动-程序员宅基地

文章浏览阅读3.4k次,点赞2次,收藏13次。跟随鼠标移动的粒子以grid(SOP)为partical(SOP)的资源模板,调整后连接【Geo组合+point spirit(MAT)】,在连接【feedback组合】适当调整。影响粒子动态的节点【metaball(SOP)+force(SOP)】添加mouse in(CHOP)鼠标位置到metaball的坐标,实现鼠标影响。..._touchdesigner怎么让一个模型跟着鼠标移动

【附源码】基于java的校园停车场管理系统的设计与实现61m0e9计算机毕设SSM_基于java技术的停车场管理系统实现与设计-程序员宅基地

文章浏览阅读178次。项目运行环境配置:Jdk1.8 + Tomcat7.0 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。项目技术:Springboot + mybatis + Maven +mysql5.7或8.0+html+css+js等等组成,B/S模式 + Maven管理等等。环境需要1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。_基于java技术的停车场管理系统实现与设计

Android系统播放器MediaPlayer源码分析_android多媒体播放源码分析 时序图-程序员宅基地

文章浏览阅读3.5k次。前言对于MediaPlayer播放器的源码分析内容相对来说比较多,会从Java-&amp;amp;gt;Jni-&amp;amp;gt;C/C++慢慢分析,后面会慢慢更新。另外,博客只作为自己学习记录的一种方式,对于其他的不过多的评论。MediaPlayerDemopublic class MainActivity extends AppCompatActivity implements SurfaceHolder.Cal..._android多媒体播放源码分析 时序图

java 数据结构与算法 ——快速排序法-程序员宅基地

文章浏览阅读2.4k次,点赞41次,收藏13次。java 数据结构与算法 ——快速排序法_快速排序法