【Linux学习】Vi / Vim编辑器—编辑器工作模式、vi编辑操作

时间:2022-09-28 01:05:34

Vi / Vim编辑器—编辑器工作模式、vi编辑操作

推荐一个很好的学习指南:http://www.oschina.net/translate/learn-vim-progressively

一、编辑器的三种工作模式

Vi / Vim是全屏幕编辑器,正因为这种特性,通常Vi分为三种模式:一般模式、编辑模式、命令行命令模式。

(1)     一般模式Normal Mode(common Mode, c-Mode)

Vi处理文件时,进入该文件就是一般模式,此模式中输入的任何字符皆被视为指令。可以用方向键来移动光标,可以使用“删除字符”或“删除整行”来处理文件内容,也可以使用复制、粘贴处理文件数据

(2)     编辑模式(文本写入模式)Insert Mode (i-Mode)

在一般模式中可以进行删除、复制、粘贴操作,但无法进行编辑,需要按下i, l, o, O, a, A, r, R等才会进入编辑模式,此时进入文本写入模式,而不会被视为命令行。通常在屏幕左下方会出现“INSERT”或“REPLACE”字样,才可以输入任何字符到文件中。返回一般模式按下Esc键即可。

(3)     命令行模式Ed Mode (common-line Mode, e-Mode)

在一般模式中,输入:或/或?就可以将光标移到最下面一行,在这个模式中,可以搜索数据并读取、存盘、大量删除字符、离开Vi、显示行号等操作都是在此模式中实现的。

二、vi操作

step1: 使用vi进入一般模式

denny@ubuntu:~$ Vi test.txt

step2: 按i进入编辑模式,开始编辑文字

注:i:从当前光标所在处插入               I:在当前光标所在行第一个非空格字符处插入

a: 从当前光标所在的下一个字符处插入  A:从光标所在行的最后一个字符插入

o:在当前光标所在下一行处插入新行     O:从当前光标上一行插入新行

r:替换当前光标所指的一个字符       R:一直替换光标所在的文字,直到按Esc退出

step3: 按Esc键回到一般模式

step4: 在一般模式中输入:wq保存后退出Vi

实例1:=>进入编辑模式:输入i或a进入,按Esc退回到一般模式

输入vim test.c(在编辑模式下)

输入#include<stdio.h>

voidmain() { printf(“HelloWorld”); }

再按Esc退出,回到一般模式的vim,输入:wq保存,回车。

回车后输入gcctest.c编译,再输入/a.out,执行,输出Helloworld

实例2:shell

【Linux学习】Vi / Vim编辑器—编辑器工作模式、vi编辑操作

【Linux学习】Vi / Vim编辑器—编辑器工作模式、vi编辑操作

【Linux学习】Vi / Vim编辑器—编辑器工作模式、vi编辑操作

【Linux学习】Vi / Vim编辑器—编辑器工作模式、vi编辑操作的更多相关文章

  1. linux&sol;linux学习笔记-vim文本编辑器&lpar;mooc&rpar;

    vim文本编辑器 vim与vi的区别:( vim=vi +IMproved) VIM是一个Unix以及类unix文本编辑器 特点:功能强大,高度可定制 vim编辑器的三种模式:一般模式.编辑模式和命令 ...

  2. Linux学习笔记—vim程序编辑器

    vi和vim vim是vi的升级版,支持vi的所有指令 vi的使用 vi分为三种模式:一般模式.编辑模式.命令行模式 一般模式 以vi打开一个文件就直接进入一般模式了,这个模式下可以使用上下左右按键来 ...

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

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

  4. Linux学习之Vim&sol;Vi使用&lpar;十三&rpar;

    Linux学习之Vim/Vi使用 Vim/Vi简介 Vim/Vi工作模式 Vim/Vi基本使用 Vim/Vi应用技巧 Vim/Vi简介 Vim/Vi是一个功能强大的全屏幕文本编辑器,是Linux/UN ...

  5. 第十八章 vi&sol;vim文本编辑器介绍

    一.vi/vim文本编辑器介绍 1.含义: vi就是一个文本编辑器 2.为什么学习: 系统配置 编写脚本 vim就是vi的升级版 高级版 [root@jindada ~]# [root@jindada ...

  6. Linux学习,Vim以及Vi常用快捷键

    VIM配置文件路径: /etc/vmrc ===> 系统配置文件路径 ~/.vimrc ===> 当前用户配置文件路径 $VIM ===> 与VIM配置文件相关的变量 进入插入模式: ...

  7. Linux下的Vim文本编辑器&lpar;入门&rpar;

    引言 vim filename:打开名为filename的文件,如果不存在就会创建一个filename文件 Vim的三种使用模式 1. 命令模式 启动Vim时,就进入了命令模式 在该模式下: i:切换 ...

  8. linux学习之——vim简明教程

    摘自  http://blog.csdn.net/niushuai666/article/details/7275406 ——————————正文开始—————————— 你想以最快的速度学习人类史上 ...

  9. Linux学习4——Vim和Bash

    一.写在前面  本将将介绍Linux自带的强大的文本编辑器Vim和Bash的相关知识. 二.完成目标 1.了解Vim和Bash的基本概念 2.定制自己的vim 3.Bash中的一些命令 4.管道命令 ...

  10. Linux学习之Vim使用

    一 为何要学Vim 所有的Unix Like系统都有自带vi编辑器 一些软件的编辑接口会自动调起vi 作为vi的升级版,vim具有程序编辑功能,而且具有代码颜色高亮显示.辨别代码的正确性等功能 以上优 ...

随机推荐

  1. 使用jquery-qrcode生成二维码

    一.使用jquery-qrcode生成二维码 先简单说一下jquery-qrcode,这个开源的三方库(可以从https://github.com/jeromeetienne/jquery-qrcod ...

  2. Ubuntu 上创建常用磁盘阵列

    RAID(Redundant Array of Independent Disk 独立冗余磁盘阵列)技术是加州大学伯克利分校1987年提出,最初是为了组合小的廉价磁盘来代替大的昂贵磁盘,同时希望磁盘失 ...

  3. Xamarin&period;Forms项目无法添加服务引用

    Xamarin.Forms项目无法添加服务引用 创建的Xamarin.Forms项目中,右击“引用”选项,在弹出的菜单中没有“添加服务引用”命令.这是由于该项目是支持Windows Phone 8.1 ...

  4. 深入了解Qt(一)之QObject

    深入了解Qt主要内容来源于Inside Qt系列,本文做了部分删改,以便于理解.在此向原作者表示感谢! QObject这个 class 是 QT 对象模型的核心,关于对象模型可以阅读C++对象模型详解 ...

  5. C&num; 序列化 Serialize 的应用

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.I ...

  6. openlayers4 入门开发系列之地图空间查询篇(附源码下载)

    前言 openlayers4 官网的 api 文档介绍地址 openlayers4 api,里面详细的介绍 openlayers4 各个类的介绍,还有就是在线例子:openlayers4 官网在线例子 ...

  7. AbstractQueuedSynchronizer源码解析

    1.简介 AbstractQueuedSynchronizer队列同步器,用来实现锁或者其他同步组件的基础框架 AbstractQueuedSynchronizer使用int类型的volatile变量 ...

  8. html跳转指定位置-利用锚点

    比如我现在 a.html 的时候,我想跳转到 b.html ,并且是 b.html 的某一个位置,用 <a href=>, a.html里: <a href="b.html ...

  9. 手动升级11&period;2&period;0&period;1的rac数据库到11&period;2&period;0&period;4

    ① 关闭两个节点上的数据库 crsctl stop resource ora.ORA11G.db ② 命令行单节点启动数据库, 注意这里的SQLPLUS 一定是升级后的软件地址 sqlplus / a ...

  10. vue内引入jsPlumb流程控制器(一)

    1. npm i jsplumb --save 注:jsplumb要全小写 2. 在main.js内 加: import jsPlumb from 'jsplumb' Vue.prototype.$j ...