Linux之vi与vim使用与区别

vi/vim命令 vi/vim命令简介 vi(visual editor)是Linux和Unix系统上最基本的文本编辑器,类似于Windows系统下的notepad(记事本)编辑器。 Vim(Vi improved)是vi编辑器的加强版,比vi更容易使用,他可以用多种颜色的方式来显示一些特殊的信息。同时vi的命令几乎都可以在vim上使用。 四种模式 在日常的使用中,Linux并没有像Windows一样很方便的可视化界面,通常需要记很多的命令,复杂难记,今天我以不同模式的方式跟大家梳理哪些命令在哪种模式下使用,方便记忆。 v 阅读详情
AI摘要

本文详细介绍了VI与VIM编辑器的区别及其工作模式。VI与VIM都是多模式编辑器,VIM作为VI的升级版,在多级撤销、易用性、语法加亮等方面有所增强。文章还详细讲解了VI的三种模式和VIM的四种模式,包括如何在不同模式间切换以及常用的操作命令。

一、VI与VIM区别

它们都是多模式编辑器,不同的是vim 是vi的升级版本,它不仅兼容vi的所有指令,而且还有一些新的特性在里面。


vim的这些优势主要体现在以下几个方面:

1、多级撤消 
我们知道在vi里,按 u只能撤消上次命令,而在vim里可以无限制的撤消。

2、易用性

vi只能运行于unix中,而vim不仅可以运行于unix,windows ,mac等多操作平台。

3、语法加亮 
vim可以用不同的颜色来加亮你的代码。

4、可视化操作 
就是说vim不仅可以在终端运行,也可以运行于x window、 mac os、 windows。

5、对vi的完全兼容 
某些情况下,你可以把vim当成vi来使用。

vi和vim都是Linux中的编辑器,不同的是vim比较高级,可以视为vi的升级版本。vi使用于文本编辑,但是vim更适用于coding。

二、VI模式

vi有3个模式:命令行模式 (command mode/一般模式)、文本输入模式 (input mode/编辑模式)、末行模式 (last line mode/指令列命令模式)。 


命令行模式 (command mode/一般模式)

  任何时候,不管用户处于何种模式,只要按一下“ESC”键,即可使Vi进入命令行模式;我们在shell环境(提示符为$)下输入启动Vi命令,进入编辑器时,也是处于该模式下。  
  在该模式下,用户可以输入各种合法的Vi命令,用于管理自己的文档。此时从键盘上输入的任何字符都被当做编辑命令来解释,若输入的字符是合法的Vi命令,则Vi在接受用户命令之后完成相应的动作。但需注意的是,所输入的命令并不在屏幕上显示出来。若输入的字符不是Vi的合法命令,Vi会响铃报警。


文本输入模式 (input mode/编辑模式)

  在命令模式下输入插入命令i(insert)、附加命令a (append)、打开命令o(open)、修改命令c(change)、取代命令r或替换命令s都可以进入文本输入模式。在该模式下,用户输入的任何字符都被Vi当做文件内容保存起来,并将其显示在屏幕上。在文本输入过程中,若想回到命令模式下,按”ESC”键即可。 


末行模式 (last line mode/指令列命令模式)

  末行模式也称ex转义模式。  
  Vi和Ex编辑器的功能是相同的,二者主要区别是用户界面。在Vi中,命令通常是单个键,例如i、a、o等;而在Ex中,命令是以按回车键结束的正文行。Vi有一个专门的“转义”命令,可访问很多面向行的Ex命令。 
  在命令模式下,用户按“:”键即可进入末行模式下,此时Vi会在显示窗口的最后一行(通常也是屏幕的最后一行)显示一个“:”作为末行模式的提示符,等待用户输入命令。多数文件管理命令都是在此模式下执行的(如把编辑缓冲区的内容写到文件中等)。末行命令执行完后,Vi自动回到命令模式。

三、VIM模式

vim一共有4个模式:

  1. 正常模式 (Normal-mode) 
  2. 插入模式 (Insert-mode) 
  3. 命令模式 (Command-mode) 
  4. 可视模式 (Visual-mode)

正常模式

启动vim后默认处于正常模式。不论位于什么模式,按下<Esc>键(有时需要按两下)都会进入正常模式。

插入模式

在正常模式中按下i, I, a, A等键,会进入插入模式。

现在只用记住按i键会进行插入模式。在插入模式中,击键时会写入相应的字符。

命令模式

在正常模式中,按下:(英文冒号)键,会进入命令模式。

在命令模式中可以执行一些输入并执行一些vim或插件提供的指令,就像在shell里一样。这些指令包括设置环境、文件操作、调用某个功能等等。

常用的命令有:q(退出)、q!(强制退出)、w(保存)、wq(保存并退出)。

可视模式

在正常模式中按下v, V, <Ctrl>+v,可以进入可视模式。

可视模式中的操作有点像拿鼠标进行操作,选择文本的时候有一种鼠标选择的即视感,有时候会很方便。


打开文件、保存、关闭文件(vim命令模式下使用) 

命令的使用请先按ESC进入命令模式!


vim filename       //打开filename文件 
:w vpser.net //保存至vpser.net文件 
:q          //退出编辑器,如果文件已修改请使用下面的命令 
:q!        //退出编辑器,且不保存 
:w        //保存文件 
:wq         //退出编辑器,且保存文件 
:x          //退出编辑器,且保存文件 
修改:Insert键

插入文本或行(vim命令模式下使用,执行下面命令后将进入插入模式,按ESC键可退出插入模式) 

a      //在当前光标位置的右边添加文本 
i       //在当前光标位置的左边添加文本 
A     //在当前行的末尾位置添加文本 
I      //在当前行的开始处添加文本(非空字符的行首) 
O     //在当前行的上面新建一行 
o     //在当前行的下面新建一行 
R    //替换(覆盖)当前光标位置及后面的若干文本 
J    //合并光标所在行及下一行为一行(依然在命令模式) 

Linux 系统vi/vim/编辑器使用介绍(详细) Vim的发布最早可以追溯到1991年,英文全称为Vi Improved。它也是Vi编辑器的提升版本,其中最大的改进当属添加了代码着色功能,在某些编程场景下还能自动修正错误代码。vi(visual editor)编辑器通常被简称为vi,它是Linux和Unix系统上最基本的文本编辑器,类似于Windows 系统下的notepad(记事本)编辑器。vim(Vi improved)是vi编辑器的加强版,比vi更容易使用。vi的命令几乎全部都可以在vim上使用,全兼容vi,最明显的区别是vim可以语法加亮。 阅读详情

相关推荐

Linux vi/vim编辑器

*底线命令模式: **不可以对文件内容进行编辑,在此模式下可以执行一些vi/vim的命令,例如: 退出命令、保存内容命令等等。在vi/vim底线命令模式下,我们可以执行一些特殊的命令,同时可以完成特殊的操作,例如:执行linux系统中的命令、对文件的内容进行查找或替换操作等。通过上一关的学习,我们了解到了vi/vim的命令模式下的常用操作,本关我们将继续深入学习vi/vim编辑器的底线命令模式操作。本关任务:在命令行模式下,使用vi/vim命令来查看已存在文件,并保存退出vi/vim。

Junds0的博客 2243

vi/vim编辑器

vi文本编辑器与vim文本编辑器 三种模式与相关命令介绍

MONGJUK的博客 4055

手把手教你排查libstdc++.so.6版本问题:从GLIBCXX缺失到完美解决

本文深入解析Linux系统中常见的GLIBCXX版本缺失问题,以`ImportError: /lib/x86_64-linux-gnu/libstdc++.so.6: version 'GLIBCXX_3.4.29' not found`为例,从动态链接原理入手,提供使用`strings`和`find`命令的诊断方法,并详细对比了四种解决方案的优缺点。文章重点推荐通过设置`LD_LIBRARY_PATH`或更新系统库的安全策略,并最终建议使用Docker容器化技术实现环境依赖的根治与统一管理。

j7k8l的博客 300

linux 命令vi和vim,简单介绍vi与vim的区别以及常用命令

导读vi与vimvi编辑器是所有Unix及Linux系统下标准的编辑器,他就相当于windows系统中的记事本一样,它的强大不逊色于任何最新的文本编辑器。简单介绍vi与vim的区别以及常用命令一、vi与vim的区别1、多级撤消在vi编辑器中,按u只能撤消上次命令,而在vim里可以无限制的撤消。2、易用性vi编辑器只能运行于unix中,而vim不仅可以运行于unix,还可用于windows、mac...

weixin_42563415的博客 770

k8s集群部署私有镜像仓库

本文介绍了在Kubernetes集群中部署私有镜像仓库的完整方案。使用registry:2镜像创建Deployment,通过NodePort(30500)暴露服务,并采用hostPath(/data/registry)实现数据持久化。部署过程包括节点标记、YAML配置、资源创建及验证步骤,同时提供了Docker和Containerd两种环境下的详细使用方法,包括配置不信任私有仓库、镜像推送/拉取操作指南。该方案特别适合开发测试环境,为团队提供便捷的本地镜像管理能力。

weixin_42728286的博客 893

高频注入是否需要对齐和强拖操作?

高频注入技术显著优化了传统FOC启动流程,但仍需部分对齐操作。传统启动必须包含位置检测、对齐和强拖等步骤,而高频注入可实现零速闭环,简化或跳过部分环节。高频注入下的对齐主要用于验证有效性、初始化观测器和建立初始磁链,形式可大幅简化。虽然高频注入基本消除了传统强拖需求,但在重载、弱凸极等特殊情况下仍需辅助。实际应用中可采用自适应混合策略,根据负载和电机类型选择最优启动方案。高频注入使对齐和强拖从"必须"变为"可选优化项",是无传感器控制的重要进步。

汽车软件开发 204

Linux下vi与vim命令使用与区别

它们都是多模式编辑器,不同的是vim 是vi的升级版本,它不仅兼容vi的所有指令,而且还有一些新的特性在里面。vim的这些优势主要体现在以下几个方面:1、多级撤消 我们知道在vi里,按 u只能撤消上次命令,而在vim里可以无限制的撤消。2、易用性vi只能运行于unix中,而vim不仅可以运行于unix,windows ,mac等多操作平台。3、语法加亮 vim可以用不同的颜色来加亮你的代码。4、

小小默:进无止境 4万+

[QMT量化交易小白入门]-八十九、深度学习训练多维特征进行金融价格行情预测

本专栏主要是介绍QMT的基础用法,常见函数,写策略的方法,也会分享一些量化交易的思路,大概会写100篇左右。QMT的相关资料较少,在使用过程中不断的摸索,遇到了一些问题,记录下来和大家一起沟通,共同进步。

木头大左的博客 218

Linux - vi与vim使用与区别

** 【1】VI与VIM区别 ** 它们都是多模式编辑器,不同的是vim 是vi的升级版本,它不仅兼容vi的所有指令,而且还有一些新的特性在里面。 vim的这些优势主要体现在以下几个方面: ① 多级撤消 我们知道在vi里,按 u只能撤消上次命令,而在vim里可以无限制的撤消。 ② 易用性 vi只能运行于unix中,而vim不仅可以运行于unix,windows ,mac等多操作平台。 ③ ...

无垠博客 3万+

BAQ压缩原理

BAQ——Block Adaptive Quantization,块自适应量化,一种数据压缩算法。

2871

《R 语言卡方检验全解析:手写代码实现与详细步骤》卡方检验

卡方检验(Chi-Square Test)是一种常用的统计方法,主要用于检验分类变量之间的独立性或拟合优度。在医学、社会科学等领域中,卡方检验常用于分析两个或多个分类变量之间的关系。以下是卡方检验的全面解析,包括实现代码和手写公式。χ2∑Ei​Oi​−Ei​2​Oi​Ei​dfr−1c−1rcdfk−1k如果卡方统计量大于临界值,或 p 值小于显著性水平(如 0.05),则拒绝原假设。

Mrrunsen的博客 685

linux 下vi与vim区别以及vim的使用

来自cnblog 百川汇海 linux 下vi与vim区别以及vim的使用 总结的很够的了,good

HayPinF的博客 216

Python对象的基本组成和内存示意图及引用的本质

在Python中,变量也称为:对象的引用(reference)。变量存储的就是对象的地址。变量不需要显式声明类型。根据变量引用的对象,Python解释器自动确定数据类型。一个内存块,拥有特定的值,支持特定类型的相关操作。变量位于:栈内存(压栈出栈等细节,后续再介绍)。⚠️Python是动态类型语言。变量通过地址引用了“对象”。

Calor13的博客 557

linux下vi与vim编辑器的区别及使用方法

<br />vi与vim一样都是编辑器,不同的是vim更高级一些,可以理解是vi的高级 版本。vi就像Windows中的计事本,而vim则可以算的上是 office中的word。vi主要用来编辑一些文件,vim是程序员的好工具。好的。。。。下面在介绍一下vi的使用。。。。。。<br />     1. 使用vi进入一般模式<br /> [root@linux ~]# vi test.txt<br /> 直接输入“vi 文件名”即可进入vi。如图10-2所示,左下角会显示这个文件的当前状态。

Gary's Blog --- A C++ programmer 1万+

【DRAM存储器六十八】DDR5介绍--DQS Interval Oscillator—动态时序校准利器

DDR5内存采用DQS间隔振荡器(DQSIntervalOscillator)技术应对高速数据传输中的时序漂移问题。该技术通过测量DQS信号在可编程时间窗口内的振荡次数(16位计数值),动态监测温度/电压变化导致的DQS-DQ延迟偏移。控制器通过MPC命令启停振荡器,读取MR46/MR47寄存器获取计数值,并与基准值对比来调整DQS相位,确保数据采样窗口始终处于最佳位置。该机制使DDR5在8400MT/s高速率下仍能保持数据可靠性,有效补偿±0.48tCK的时序偏移。

highman110的博客 149

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

linux - vi与vim使用与区别

【1】VI与VIM区别 它们都是多模式编辑器,不同的是vim 是vi的升级版本,它不仅兼容vi的所有指令,而且还有一些新的特性在里面。 vim的这些优势主要体现在以下几个方面: 1、多级撤消  我们知道在vi里,按 u只能撤消上次命令,而在vim里可以无限制的撤消。 2、易用性 vi只能运行于unix中,而vim不仅可以运行于unix,windows ,mac等多操作平台。 3、语法加...

scratlc的博客 2233

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

linux中用vi读文件夹,linux下vi与vim编辑器的简单区别及VI详细使用方法

vi与vim一样都是编辑器,不同的是vim更高级一些,可以理解是vi的高级 版本。vi就像Windows中的计事本,而vim则可以算的上是 office中的word。vi主要用来编辑一些文件,vim是程序员的好工具。好的。。。。下面在介绍一下vi的使用。。。。。。1. 使用vi进入一般模式[root@Linux~]# vi test.txt直接输入“vi 文件名”即可进入vi。如图10-2所示,...

weixin_39801465的博客 739

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

上一篇: Linux之yum常用命令详解
下一篇: CRMEB系统二开及安装配置视频教程
lofate
博客等级 码龄10年 78粉丝 148原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值