首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

linux vi vim 区别

Linux中的vivim都是文本编辑器,但它们之间存在一些关键的区别。

基础概念

vi (Visual Editor):

  • vi是一个非常基础且功能强大的文本编辑器,广泛用于Linux系统中。
  • 它分为三种模式:命令模式(Command Mode)、插入模式(Insert Mode)和底行模式(Last Line Mode)。

vim (Vi Improved):

  • vimvi的一个增强版本,包含了更多高级功能和插件支持。
  • 它同样支持三种模式,但在功能和用户体验上有显著提升。

相关优势

vim的优势:

  1. 语法高亮vim支持多种编程语言的语法高亮,便于代码阅读和编辑。
  2. 自动缩进:自动调整代码缩进,提高编码效率。
  3. 宏录制:可以录制一系列操作并重复执行,适合批量修改文本。
  4. 插件系统:拥有丰富的插件生态,可以通过安装插件扩展功能。
  5. 多窗口编辑:支持同时打开多个文件并在不同窗口中进行编辑。
  6. 更强大的搜索和替换功能:支持正则表达式,进行复杂的文本查找和替换。

类型与应用场景

vi:

  • 主要用于简单的文本编辑任务,特别是在资源受限的环境中。
  • 由于其简洁性,常被系统管理员用于快速修改配置文件。

vim:

  • 适用于各种编程和脚本编写工作,特别是需要复杂编辑功能的场景。
  • 在软件开发、系统管理和日常办公中都非常流行。

遇到的问题及解决方法

常见问题:

  1. 模式切换不熟练:初学者可能会在模式之间频繁切换时感到困惑。
  2. 快捷键记忆困难vi/vim的快捷键较多,不易记住。

解决方法:

  1. 练习模式切换:通过多次实践熟悉三种模式的切换方法。
    • 命令模式到插入模式:按 i 键。
    • 插入模式到命令模式:按 Esc 键。
    • 命令模式到底行模式:按 : 键。
  • 使用帮助文档:在vim中输入 :help 可以查看详细的帮助文档。
  • 学习常用快捷键:掌握一些常用的编辑命令,如复制 (yy)、粘贴 (p)、删除 (dd) 等。

示例代码

以下是一个简单的vim使用示例:

代码语言:txt
复制
# 打开文件进行编辑
vim example.txt

# 在命令模式下输入以下命令:
# i 进入插入模式
# 编辑文本...
# Esc 返回命令模式
# :wq 保存并退出

总之,vimvi的一个现代化改进版本,提供了更多便利的功能和更好的用户体验。对于需要进行复杂文本编辑的用户来说,vim无疑是更好的选择。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

linux vim dd命令_vim命令和vi的区别

Vim是从vi发展而来的文本编辑器,可以用颜色或底线等方式来显示一些特殊的信息。Vim是Linux中必不可少的工具,搭建网站修改配置文件时经常用到。本教程介绍Vim的模式和常用操作。...背景信息 Vim的各个模式介绍如下表所示: 模式 作用 模式转换 普通模式 (Normal Mode) 在该模式下,您可以复制、粘贴、删除字符或行。 运行vim 打开文件时,即进入普通模式。...Vim的常用操作包括以下三种: 插入 替换 删除 插入 基本命令: i:在当前字符的左边插入。 I:在当前行的行首插入 。 a:在当前字符的右边插入。 A:在当前行的行尾插入。...步骤如下: 运行vim example.conf命令打开文件,进入普通模式。 运行/Include conf.modules.d/*.conf找到目标行。 按o进入插入模式。...步骤如下: 运行vim example.conf命令打开文件,进入普通模式。 运行/#Listen 12.34.56.78:80找到目标。 按2dd删除以下内容。

4.8K10

Linux的vi命令用法大全_vim命令和vi的区别

linux下使用vi编辑是很方便的,但是具体要怎么做呢?下面由学习啦小编为大家整理了linux下vi的相关命令,希望对大家有帮助!...1.linux vi命令的基本观点 基本上vi能够分为三种形态,区分是命令方式(command mode)、插入方式(Insert mode)和底行方式(last line mode),各方式的功用区分如下...2、linux vi命令的基本操作 a) 进入vi 在系统提示符号输入vi及文件称号后,就进入vi全屏幕编辑画面: $ vi myfile 不过有一点要特别留意,就是您进入vi之后,是处于「命令行方式(...初次运用vi的人都会想先用上下左右键移动光标,结果计算机不断哔哔叫,把自己气个半死,所以进入vi后,先不要乱动,转换到「插入方式(Insert mode)」再说吧!..., 不存盘强迫退出vi) 3、linux vi命令行方式(command mode)功用键 1).

2.7K20
  • linux之vi,vim命令

    vim 是对 vi 的扩展,文中的很多操作是 vi 通用的 vi 是区分大小写的命令的,也就是说 g与G 是不同的命令 在不同模式下,快捷键是不一样的 模式分 一般模式 编辑模式 指令模式 一般模式用于文件内部操作..." default tabstop=8 :set tabstop=4 " use keyboard F11 to change paste mode :set pastetoggle= vim...会认为我们要在文本中插入一个 0,并在屏幕上显示输入的“0”;然后当我们执行命令 0-Ctrl-Shift-d 时,Vim 就会意识到我们要做的是减少缩进,这时 0 会就会从屏幕上消失 vim tab...vim 自动缩进 cindent :set cindent vim 可以很好的识别出 C 和 Java 等结构化程序设计语言,并且能用 C 语言的缩进格式来处理程序的缩进结构 smartindent...的图形界面所致 sudo apt-get install vim-gnome 设置 vim 永远显示行号 修改 vim 的配置文件加入 set nu vi ~/.vimrc 然后输入 set nu

    21.7K20

    Linux-vi和vim

    文章目录 vi和vim 模式 一般模式 编辑模式 命令模式 快捷键 vi和vim ---- Vi是unix/linux操作系统中最经典的文本编辑器,只能是编辑字符,不能对字体、段落进行排版;它既可以新建文件...,也可以编辑文件;它没有菜单,只有命令,且命令繁多,vi适用于文本编辑。...Vim是从 Vi 发展出来的一个文本编辑器,可以看做是 Vi 的增强版本,可以主动的以字体颜色辨别语法的正确性,方便程序设计代码补全、编译及错误跳转等方便编程的功能特别丰富,vim适用于coding。...模式 ---- vi/vim共分为三种模式,分别是一般模式、编辑模式、命令模式,转换关系如下: 一般模式 在一般模式下,可以使用快捷键(列在文章末尾): 就不一一演示了 输入指令vim filename...command 暂时离开 vi 到指令行模式下执行 command 的显示结果 :!

    7.9K20

    linux 之 vi,vim 命令

    vim 是对 vi 的扩展,文中的很多操作是 vi 通用的 vi 是区分大小写的命令的,也就是说 g与G 是不同的命令 在不同模式下,快捷键是不一样的 模式分 一般模式 编辑模式 指令模式 一般模式用于文件内部操作...会认为我们要在文本中插入一个 0,并在屏幕上显示输入的“0”;然后当我们执行命令 0-Ctrl-Shift-d 时,Vim 就会意识到我们要做的是减少缩进,这时 0 会就会从屏幕上消失 vim tab...vim 自动缩进 cindent :set cindent vim 可以很好的识别出 C 和 Java 等结构化程序设计语言,并且能用 C 语言的缩进格式来处理程序的缩进结构 smartindent...的图形界面所致undefinedsudo apt-get install vim-gnome 设置 vim 永远显示行号 修改 vim 的配置文件加入 set nu vi ~/.vimrc 然后输入...set shiftwidth=n 设置自动语法高亮 syntax on 原文链接:https://rumenz.com/rumenbiji/linux-vi-vim.html

    7K01

    linux中vi,vim操作技巧

    配置vim /etc/vimrc配置项全局生效,对所有用户生效 .vimrc家目录下,只针对某个用户生效 > vim /etc/vimrc set number #显示行号 set autoindent...撤销与重做 在使用 Vim 或其他编辑器的时候,你可能经常需要对某些修改进行撤销或重做。在 Vim 中,你可以切换到正常模式,按 u 来撤销操作,按 Ctrl+r 来重做。...把外部文件读入vim 我开始使用vim 的时候,经常会打开一个文件、复制内容、关闭文件、打开另一个文件、然后粘贴进去复制到内容。其实 Vim 中读取另一个文件的内容非常方便。...> vim rumenz.txt :read readme.md 把命令的结果读入vim 切换到正常模式,然后输入:read !command 即可把command的结果输入到vim中。...vim中以16进制查看文件 正常模式下,输入:%!xxd会把当前文本转换成16进制 > vim rumenz.txt 123 :%!

    4.6K10

    linux中vi,vim操作技巧

    配置vim /etc/vimrc配置项全局生效,对所有用户生效 .vimrc家目录下,只针对某个用户生效 > vim /etc/vimrc set number #显示行号 set autoindent...把外部文件读入vim 我开始使用vim 的时候,经常会打开一个文件、复制内容、关闭文件、打开另一个文件、然后粘贴进去复制到内容。其实 Vim 中读取另一个文件的内容非常方便。...> vim rumenz.txt :read readme.md 把命令的结果读入vim 切换到正常模式,然后输入:read !command 即可把command的结果输入到vim中。...vim中以16进制查看文件 正常模式下,输入:%!xxd会把当前文本转换成16进制vim rumenz.txt 123 :%!xxd 恢复到正常模式 > vim rumenz.txt 123 :%!...每一行后面追加123 :%s/$/123/ 每一行前面加#,添加注释 :%s/^/#/ 删除每一行开头的#,删除注释 :%s/^#// 原文链接:https://rumenz.com/rumenbiji/linux-vi-vim-skills.html

    2.6K00

    Linux中vi与vim编辑操作

    基本操作 1.1 vi的三种模式 1.命令模式 2.编辑模式 3.末行模式(命令模式下,按“:”即可进入末行模式) 默认情况下,VI编辑器是命令模式,需要在里面写东西的时候需要进入编辑模式 命令模式到编辑模式...若文件为只读,强制保存文件 【:q】 离开vi 【:q!】 不保存强制离开vi 【:wq】 保存后离开 【:wq!】 强制保存后离开 【:!...test.c 编辑了一个程序后,退出,用gcc -o test.o test.c 命令编译,发现有警告或者错误,又要用vim test.c命令来修改,不是很麻烦,但是不够优雅。...gcc -o test.o test.c就可以实现编译,编译的警告和错误都会显示,此时不会退出vim,按enter即可回到vim。 3....修改配置 修改当前用户配置:vim ~/.vimrc只对当前用户生效 修改全局配置:sudo vim /etc/vim/vimrc或者sudo /etc/vimrc,对所有用户生效 set nu

    3.1K20

    Linux Vi和Vim编辑器

    # Linux Vi和Vim编辑器 # vi和vim的基本介绍 Linux系统会内置vi文本编辑器 Vim具有程序编辑的能力,可以看做是Vi的增强版本,可以主动的以字体颜色辨别语法的正确性,方便程序设计...# vi和vim常用的三种模式 # 正常模式 以vim打开一个档案就直接进入一般模式了(这是默认的模式)。...按下i,I, o,0, a, A, r,R等任何一个字母之后才会进入编辑模式,一般来说按i即可. # 命令行模式 输入esc 再输入:在这个模式当中,可以提供你相关指令,完成读取、存盘、替换、离开 vim...放弃对文件内容的修改,并退出vi 保存文件退出vi :wq 操作键 功能 /word 从上而下在文件中查找字符串"word" ?...和vim快捷键 # 快捷键使用练习 拷贝当前行yy ,拷贝当前行向下的5行5yy,并粘贴(输入p)。

    2.7K40

    vi与vim的区别以及常用命令

    一、vi与vim的区别 1、多级撤消 在vi编辑器中,按u只能撤消上次命令,而在vim里可以无限制的撤消。...在这里插入图片描述 4、可视化操作 vim不仅可以在终端运行,也可以运行于windows、 mac os、 windows。 5、对vi完全兼容 可以把vim当成vi来使用。...小结:vi和vim都是Linux中的编辑器,不同的是vim比较高级,可以视为vi的升级版本。vi使用于文本编辑,但是vim更适用于coding。...vi和Ex编辑器的功能是相同的,二者主要区别是用户界面。在vi中,命令通常是单个键,例如i、a、o等;而在Ex中,命令是以按回车键结束的正文行。...四、VI与VIM的常用命令 注:由于VI与VIM在命令上几乎相同,所以这里那VIM为例。

    2.5K20

    Vi 和 Vim 的使用

    Vi (Visual Interface)是 Linux下基于Shell 的文本编辑器,Vim (Visual Interface iMproved)是 Vi的增强版本,扩展了很多功能,比如对程序源文件的语法高亮...不管是 Vi 还是 Vim,我们习惯上都管它叫 Vi,但实际上用的更多的是 Vim。 在你的系统里用 alias命令看一下 vi,可以发现用到的其实是vim。...$alias vi alias vi='vim' 所有的Linux系统里会内建 Vi,它就像 Windows里的记事本,我们一般修改系统的配置文件都要用到它,所以虽然第一次用会可能不太习惯,但是我们还是要学会使用它...用 Vi 打开或者新建一个文件只需要输入命令 vi +[文件名]就可以了,然后就进入了Vi的界面。...比如用 Vi打开一个hello.c的文件,命令如下: $vi hello.c 因为 Vi 是完全基于 Shell 的,它和 Windows下的编辑器不同,分为三种模式: ?

    93840

    VI退出 退出VIM 适用新手

    今天看了篇文章,说10万人中就有1个人不知道怎么退出VIM,我第一次用的时候也不知道怎么退出。 一、退出方法如下: :q — 退出(这是:quit的缩写) :q! — 不保存退出(这是:quit!...如果文件没有写权限,强制写) :x — 类似于:wq,如果文件无变动,那就不写入 :qa — 退出全部(这是:quitall的缩写) 二、如果只是使用简单的文本编辑、退出,使用的命令4个就足够了: 1、Linux...下打开vi文本编辑器 vi 文件名 2、插入(即编辑文本) i 3、强制保存并退出(首先:按ESC键,跳到命令模式) :wq!...三、示例如下: 1、打开文件,使用命令:vi spring-context.xml 2、进入vi文本编辑器,显示效果如下 3、进入插入状态,直接按键盘字母i 此状态可以对文件内容进行编辑...地址如下: VIM http://blog.csdn.net/xiaolong2w/article/details/8224839 https://jingyan.baidu.com/article

    6.4K70
    领券