vi编辑器是Linux系统下标准的编辑器.而且不逊色于其他任何最新的编辑器.可是会用的有多少呢.下面介绍一下vi编辑器的简单用法和部分命令.让你在Linux系统中畅行无阻.

基本上vi可以分为三种状态,分别是命令模式(command mode)、插入模式(Insert mode)和底行模式(last line mode).

1) 命令行模式command mode)   控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入Insert mode下,或者到 last line mode。     2) 插入模式(Insert mode)   只有在Insert mode下,才可以做文字输入,按「ESC」键可回到命令行模式。     3) 底行模式(last line mode)   将文件保存或退出vi,也可以设置编辑环境,如寻找字符串、列出行号……等。     不过一般我们在使用时把vi简化成两个模式,就是将底行模式(last line mode)也算入命令行模式command mode)。

工具/原料

 
  • Linux

方法/步骤

 
  1.  

    首先进入Linux的命令行界面.在目录下创建一个用于测试的文本文件(touch filename).我这里就新建了一个test12文本文件.当然这个名字是可以随便取得.

  2.  

    用"vi test12"命令进入vi命令行模式(vi filename). 如果要想编辑文本文件.必须要转换到插入模式下,也就是按一下键盘上的"i"就可以了.这样你就可以编辑文本,删除文本中的内容.按键盘上的上下左右键.来回移动了.就跟你在windows 系统中编辑文本一样.

  3.  

    输入你要输入的内容.如果你想退出文本编辑模式.并且保存刚刚编辑的文本.首先点击一下键盘上的"ESC",然后输入":wq!"这样就将文本保存了.然后推出了vi编辑器.如果不想保存就按一下键盘上的"ESC",输入":q!".如果你不确定是否成功.可以通过"cat filename" 命令来查看.

  4.  

    光标的移动除了键盘上的上下左右键.也可以是小写模式下,按键盘上的"h,j,k,l",

    "ctrl+b":屏幕往后移动一页

    "ctrl+f":屏幕往前移动一页

    "ctrl+u":屏幕往后移动半页

    "ctrl+d":屏幕往前移动半页

    输入任何一个整数,然后输入"shift+G" 就可以到这一页的开头了.

    按键盘上的大写"G"移动到文章的最后.

    按"$"符号将光标移动到行尾

    "^"将光标移到行头

    "w":将光标移到下一行头

    "b":跟"w"相反.移到上一行行头

    "e":将光标移到下一行尾.

    如果想让文本显示行号.就在命令行 模式下,在文本最后输入":set nu"命令.就可以了

  5.  

    复制   「yw」:将光标所在之处到字尾的字符复制到缓冲区中。   「yy」:复制光标所在行到缓冲区。   「#yy」:例如,「6yy」表示拷贝从光标所在的该行"往下数"6行文字。   「p」:将缓冲区内的字符贴到光标所在位置。注意:所有与"y"有关的复制命令都必须与"p"配合才能完成复制与粘贴功能。

  6.  

    查找

    用"/"加上要查找的内容.例如"/hello"或者是"?hello"也是可以的.

  7.  

    替换   「r」:替换光标所在处的字符。 ,按一下"r"然后输入要即可.  「R」:替换光标所到之处的字符,直到按下「ESC」键为止。

  8. 8

    恢复上一次操作   「u」:如果您误执行一个命令,可以马上按下「u」,回到上一个操作。按多次"u"可以执行多次恢复.就相当于"CTRL +Z"的操作.

    ====================================

    总结:

    vim进入后,按“i”进入编辑模式,编辑完成按“ESC”,然后按:wq!  保存后退出

Linux中vi编辑器的使用详解的更多相关文章

  1. Linux中Nginx安装与配置详解

    转载自:http://www.linuxidc.com/Linux/2016-08/134110.htm Linux中Nginx安装与配置详解(CentOS-6.5:nginx-1.5.0). 1 N ...

  2. Linux 中 Vi 编辑器的简单操作

    Linux 中 Vi 编辑器的简单操作 Vi 编辑器一共有3种模式:命名模式(默认),尾行模式,编辑模式.3种模式彼此需要切换. 一.进入 Vi 编辑器的的命令 vi  filename //打开或新 ...

  3. Linux中/proc目录下文件详解

    转载于:http://blog.chinaunix.net/uid-10449864-id-2956854.html Linux中/proc目录下文件详解(一)/proc文件系统下的多种文件提供的系统 ...

  4. Linux中/proc目录下文件详解(转贴)

      转载:http://www.sudu.cn/info/index.php?op=article&id=302529   Linux中/proc目录下文件详解(一) 声明:可以自由转载本文, ...

  5. linux中vi编辑器的使用

    vi编辑器是所有Unix及Linux系统下标准的编辑器,它的强大不逊色于任何最新的文本 编辑器,这里只是简单地介绍一下它的用法和一小部分指令.由于对Unix及Linux系统的任 何版本,vi编辑器是完 ...

  6. linux中vi编辑器

    vi编辑器,通常称之为vi,是一种广泛存在于各种UNIX和Linux系 统中的文本编辑程序.它的功能十分强大,但是命令繁多,不容易掌握,它可以执行输出.删除.查找.替换.块操作等众多文本操作,而且用户 ...

  7. Linux中搭建一个ftp服务器详解

    来源:Linux社区  作者:luzhi1024 详解Linux中搭建一个ftp服务器. ftp工作是会启动两个通道:控制通道 , 数据通道在ftp协议中,控制连接均是由客户端发起的,而数据连接有两种 ...

  8. linux中vi编辑器(转载)

    三种模式相互切换 在命令终端输入vi进入vi编辑器. 命令模式:进入编辑器即进入命令模式, 输入模式:在命令模式下输入“i ”进入输入模式: 末行模式:按“:”进入末行模式: 在输入模式切换至末行模式 ...

  9. Linux中grep和egrep命令详解

    rep / egrep 语法: grep  [-cinvABC]  'word'  filename -c :打印符合要求的行数-i :忽略大小写-n :在输出符合要求的行的同时连同行号一起输出-v ...

随机推荐

  1. PAT Basic 1075 链表元素分类 (25 分)

    给定一个单链表,请编写程序将链表元素进行分类排列,使得所有负值元素都排在非负值元素的前面,而 [0, K] 区间内的元素都排在大于 K 的元素前面.但每一类内部元素的顺序是不能改变的.例如:给定链表为 ...

  2. maven的一些命令以及说明 ——1

    mvn  compile  :  编译源文件 mvn  test-compile : 编译Junit测试文件 mvn test : 运行junit测试文件 mvn package : 编译 + 测试 ...

  3. spark not serializable异常分析及解决方案

    转载自: http://bigdataer.net/?p=569 1.背景 在使用spark开发分布式数据计算作业过程中或多或少会遇到如下的错误: Serialization stack: objec ...

  4. hi 北京

    一 . 感慨 借着参加北京物联网展会的这次机会,提前找老师批了大概两周的假期.当然也借着这次机会,尝试了第一次坐飞机.第一次来北京.心里也有点小激动,在路上甚至会想,我是不是要重新规划一下我的人生了呢 ...

  5. Python window console 控制台 实现最后一行输出 print 重写

    Python window console 控制台 实现最后一行输出 print 重写 # -*- coding: utf-8-*- from __future__ import print_func ...

  6. JAVA遇见HTML——JSP篇:JSP内置对象(上)

    JSP九大内置对象 JSP内置对象是Web容器创建的一组对象,不使用new关键就可以使用的内置对象. <% int[] value={60,70,80}; for(int i:value){ o ...

  7. 通过.frm表结构和.ibd文件恢复数据

    整个恢复过程其实可以总结为下面几步: (1):恢复表结构 (2):复制出来创建表的sql语句 (3):恢复表数据(在恢复表数据的时候,首先需要解除当前创建的表与默认生成的.ibd文件间的关系,接着将要 ...

  8. Django 反向查找(related_name)

    先定义两个模型,一个是A,一个是B,是一对多的类型 class A(models.Model): name= models.CharField('名称', max_length=32) class B ...

  9. 边学边体验django--HttpRequest 对象

    每个view函数的第一个参数是一个HttpRequest对象. HttpRequest对象包含当前请求URL的一些信息: 属性 描述 path 请求页面的全路径,不包括域名'/hello/' meth ...

  10. robocopy复制大文件

    需要把win7某个盘的资料复制到移动硬盘保存,用xcopy 结果出现内存不足的错误 我的资料约50G  一查才发现要用RoboCopy.在cmd中试了一下,发现真是白用了这么多年win7,都马上要淘汰 ...