Linux系统Vi/Vim编辑器的简单介绍、安装/卸载、常用命令

时间:2021-03-19 03:39:52

Linux系统Vi/Vim编辑器的简单介绍、安装/卸载、常用命令

1、介绍

vi(Visual Interface)编辑器是Linux和Unix上最基本的文本编辑器,工作在字符模式下。由于不需要图形界面,vi是效率很高的文本编辑器。而Vim(vi iMprove)是Vi的加强版,在Linux/Unix操作系统中这个编辑器可谓是强大到不可想象,理解到这里就可以了,再要了解更详细自行百度。

2、VIM编辑器的安装与卸载

2.1安装Vim

sudo apt-get install vim

 提示:[y/n]?        回复“y”即可

Linux系统Vi/Vim编辑器的简单介绍、安装/卸载、常用命令

2.2Vim编辑器的卸载

sudo apt-get remove vim-common (卸载Vim编辑器相关的软件包)

Linux系统Vi/Vim编辑器的简单介绍、安装/卸载、常用命令

。。。

3、Vim编辑器的工作模式

  基本上 vi/vim 共分为三种模式,分别是命令模式(Command mode),输入模式(Insert mode)和底线命令模式(Last line mode)。

模式直接的切换如图所示(本图片来自菜鸟教程)

Linux系统Vi/Vim编辑器的简单介绍、安装/卸载、常用命令

图3.1 模式切换

3.1命令模式(Command mode)

新建一个文件HelloWorld.c  或者直接使用Vim filename打开文件保存即可生成新文件

Linux系统Vi/Vim编辑器的简单介绍、安装/卸载、常用命令

用Vim filename 命令打开该文件

Linux系统Vi/Vim编辑器的简单介绍、安装/卸载、常用命令

HelloWorld.c 空白文件  默认打开文件时候为命令模式左下角出现当前文件名称

Linux系统Vi/Vim编辑器的简单介绍、安装/卸载、常用命令

命令模式下

逐字符移动
 h:向左
 l:向右
 j:向下
 k:向上
 #h:移动#个字符
以单词为单位移动
 w:移到下一个单词的词首
 e:跳至当前或下一个单词的词尾
 b:跳至当前或上一个单词的词首
 #w:表示移动#个单词
行内跳转
 0:绝对行首
 ^:行首第一个非空白字符
 $:绝对行尾
行间跳转
 #G:跳转到第#行
   G:最后一行

输入i,编写一个简单的C语言程序(左下角出现 insert 插入标识即为输入模式,这个时候就可以输入文本了)

Linux系统Vi/Vim编辑器的简单介绍、安装/卸载、常用命令

3.2 输入模式(Insert mode)

输入以下字母可转为输入模式

  • i:在当前光标所在字符的前面,转为输入模式
  • I:在当前光标所在行的行首转换为输入模式
  • a:在当前光标所在字符的后面,转为输入模式
  • A:在光标所在行的行尾,转换为输入模式
  • o:在当前光标所在行的下方,新建一行,并转为输入模式
  • O:在当前光标所在行的上方,新建一行,并转为输入模式
  • s:删除光标所在字符
  • r:替换光标处字符

输入模式下可以使用方向按键来移动光标

3.3底线命令模式(Last line mode)

命令模式下输入冒号即可到底线命令模式

Linux系统Vi/Vim编辑器的简单介绍、安装/卸载、常用命令

底线模式常用命令

  • w:保存
  • q:退出
  • wq 或 x:保存退出,wq 和 x 都是保存退出
  • q!:强制退出
  • w!:强制保存,管理员才有权限

 4、更多命令

如果您想了解更多命令等可以直接使用vimtutor大概花费30分钟阅读以下VIM官方教程

Linux系统Vi/Vim编辑器的简单介绍、安装/卸载、常用命令

Linux系统Vi/Vim编辑器的简单介绍、安装/卸载、常用命令

首先介绍就是命令模式下光标的移动

※※ 要移動光標,請依照說明分別按下 h、j、k、l 鍵。 ※※

      ^
    k      提示︰ h 的鍵位于左邊,每次按下就會向左移動。
< h          l >     l 的鍵位于右邊,每次按下就會向右移動。
          j             j 鍵看起來很象一支尖端方向朝下的箭頭。
        v

等等

Linux系统Vi/Vim编辑器的简单介绍、安装/卸载、常用命令的更多相关文章

  1. Linux系统 vi&sol;vim文本编辑器

    Linux系统 vi/vim文本编辑器 (一)Vim/Vi简介 (二)Vim/Vi工作模式 (三)Vim/Vi基本使用 (四)Vim/Vi应用技巧 (一)Vim/Vi简介 Vim/Vi是一个功能强大的 ...

  2. 【转】Linux上vi&lpar;vim&rpar;编辑器使用教程

    Linux上vi(vim)编辑器使用教程 ------------------------------------------------------------ ikong ------------ ...

  3. Linux随笔 - vi&sol;vim 编辑器显示行号

    显示行号 1. 打开vi 编辑器 2. 输入  :set number 3. 回车 关闭行号显示 1. 打开vi 编辑器 2. 输入  :set nonumber 3. 回车 行号在每次打开 vi/v ...

  4. Linux之vi&sol;vim编辑器

    1.概述 所有的Unix like系统都会内建 vi 文本编辑器,其他的文本编辑器则不一定会存在,但是目前我们使用比较多的是 vim 编辑器. vim具有程序编辑的能力,可以主动地以字体颜色辨别语法的 ...

  5. Linux上vi&lpar;vim&rpar;编辑器使用教程

    vi(vim)是上Linux非常常用的编辑器,很多Linux发行版都默认安装了vi(vim).vi(vim)命令繁多但是如果使用灵活之后将会大大提高效率.vi是“visual interface”的缩 ...

  6. 新手指南&colon;Linux上vi&lpar;vim&rpar;编辑器使用教程

    vi(vim)是上Linux非常常用的编辑器,很多Linux发行版都默认安装了vi(vim).vi(vim)命令繁多但是如果使用灵活之后将会大大提高效率.vi是“visual interface”的缩 ...

  7. Linux系统的vim编辑器的配置文件的初步说明

    vim 编辑器的基本说明 vi编辑器的功能类似于Windows下的记事本,只能编辑普通文本,而vim编辑器则相当于Windows下的notepad++等高级编辑器,提升了代码开发效率. 将vi命令默认 ...

  8. Java篇:Docker的介绍安装 和常用命令

    文章目录 为什么 出现docker Docker的简介 容器(Container) 镜像(Image) 仓库(Repository) Docker的安装 查看容器 删除镜像 删除容器 部署应用 以my ...

  9. linux中 vi &sol; vim显示行号或取消行号命令

    1. 显示行号 :set number 或者 :set nu 2. 取消行号显示 :set nu! 3. 每次打开都显示行号 修改vi ~/.vimrc 文件,添加:set number

随机推荐

  1. &lbrack;物理学与PDEs&rsqb;第1章习题参考解答

    [物理学与PDEs]第1章习题1 无限长直线的电场强度与电势 [物理学与PDEs]第1章习题2 均匀带电球面的电场强度与电势 [物理学与PDEs]第1章习题3 常场强下电势的定解问题 [物理学与PDE ...

  2. C&num;巧用Excel模版变成把Table打印出来

    将一个做好的Excel模版,通过程序填上数据然后打印出来这个需求有两种方法一种是通过代码打开Excel模版然后填入数据然后再打印. 第二种方法就是我将要介绍的 1.将Excel设置好格式另存为HTML ...

  3. hdoj 1047 Integer Inquiry

    Integer Inquiry Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)T ...

  4. IE6&period;0升级的两种通用代码

    随着W3C组织开始针对新的Web标准提案日期的到来,HTML5以及CSS3的新时代即将到来,同时微软的Win8以及IE10的出现也带给了这个世界奇妙的结构. 微软早在不再给WinXP做技术支持时,IE ...

  5. 页面中的平滑滚动——smooth-scroll&period;js的使用

    正常的本页面锚链接跳转的时候跟PPT似的,特别生硬,用户体验非常差. 这时候我们就可以借助smooth-scroll.js这个插件,来实现本页面的平滑的跳转. 1首先,导入必须的JS文件 <sc ...

  6. vue-router项目实战总结

    今天来谈谈vue项目{vue,vue-router,component}三大神将之一的vue-router.作为我们前后端分离很重要的实践之一,router帮我们完成了SPA应用间的页面跳转. 并且, ...

  7. mongo 索引 安全、备份与恢复

    一.索引 创建大量数据 for(i=0;i<100000;i++){ db.t1.insert({name:"test"+i,age:i}) } 数据查找性能分析 db.t1 ...

  8. ES6之Object&period;assign&lpar;&rpar;详解

    译者按: 这篇博客将介绍ES6新增的Object.assign()方法. 原文: ECMAScript 6: merging objects via Object.assign() 译者: Funde ...

  9. Fatal error&colon; Uncaught Error&colon; Call to undefined function mysqli&lowbar;connect&lpar;&rpar;

    sudo apt-get install php7.2-mysql  //版本号肯能不一样 sudo dpkg-reconfigure  php7.2-mysql sudo /etc/init.d/m ...

  10. python3 列表的赋值和深浅拷贝

    '''列表赋值:不会创建新对象两个列表的内存地址一样'''# lst1 = ["apple", "banana", ["blueberry" ...