linux系列使用vi文本编辑器

author author     2023-03-05     571

关键词:

目录

​​ 前言​​

​​一.vi文本编辑器​​

​​1.使用vi文本编辑器​​

​​2.vi编辑器的工作模式​​

​​3.命令模式中的基本操作​​

​​(1)模式切换​​

​​(2)移动光标​​

​​(3)复制、粘贴和删除​​

​​(4)查找文件内容​​

​​(5)撤销编辑及保存和退出​​

​​4.末行模式中的基本操作​​

​​ (1)保存文件及退出vi编辑器​​

​​(2)打开新文件或读入其他文件内容 ​​

​​ (3)替换文件内容​​


 前言

本章将会讲解使用vi文本编辑器


一.vi文本编辑器

配置文件是Linux操作系统的显著特征之一,其作用有点类似于Windows操作系统中的注册表,只不过注册表是集中管理,而配置文件采用了分散的自由管理方式。本节将学习如何使用Linux字符操作界面中的文本编辑器——vi,以便更好地管理和维护系统中的各种配置文件。


1.使用vi文本编辑器

vi是一个功能强大的全屏幕文本编辑工具,一直以来都作为类UNIX操作系统的默认文本编辑器,vim是vi文本编辑器(简称vi编辑器)的增强版本,在vi编辑器的基础上扩展了很多实用的功能,但是习惯上也将vim称为vi,为了使用方便,可以设置一个命令别名,将vi指向vim程序(本文中以vim程序为例)具体操作如下:

[root@localhost ~]# alias vi=/usr/bin/vim
[root@localhost ~]# which -a vi vim

2.vi编辑器的工作模式

vi编辑器是工作在字符终端环境下的全屏幕编辑器,因此编辑界面相对比较简单,没有为用户提供鼠标操作和菜单系统,而是通过按键命令实现相应的编辑和操作功能,在v编辑界面中可以使用三种不同的工作模式,即命令模式,输入模式和末行模式,在不同的模式中能够对文件进行的操作也不相同。

  • 命令模式:启动vi编辑器后默认进入命令模式。该模式中主要完成如光标移动、字符串查找,以及删除、复制、粘贴文件内容等相关操作。
  • 输入模式:该模式中主要的操作就是录入文件内容,可以对文本文件正文进行修改或添加新的内容。处于输入模式时,vi编辑器的最后一行会出现“--NSERT--”的状态提示信息。
  • 末行模式:该模式中可以设置vi编辑环境、保存文件、退出编辑器,以及对文件内容进行查找、替换等操作。处于末行模式时,vi编辑器的最后一行会出现冒号”:”提示符。

命令模式、输入模式和末行模式是vi编辑环境的三种状态,通过不同的按键操作可以在不同的模式间进行切换。例如,从命令模式按:(冒号)键可以进入末行模式,按a,i,o等键可以进入输入模式:在输入模式、末行模式均可按Esc键返回命令模式,如图所示。

Linux系列

 认识了vi编辑器的不同编辑模式(状态)以后,下面分别介绍在命令模式、末行模式中的常见操作方法(输入模式用于录入文本内容,不做特别介绍)。


3.命令模式中的基本操作

执行单独的“vi”命令即可进入v编辑器的命令模式,还会显示相关版本信息,如图所示。但更常见的使用方法是指定要编辑的文件名作为参数,若该文件不存在,则vi根据该文件名称打开一个新的空文件。

Linux系列

 在学习vi编辑器的基本操作时,建议复制一个内容较多的系统配置文件进行练习,而不要直接去修改系统文件,以免发生失误造成系统故障。


例如以下操作把系统配置文件/etc/yum.conf复制为当前目录下的vitest.file文件,然后用vi编辑器打开vitest.file文件进行编辑。

[root@localhost ~]# cp /etc/yum.conf ./vitest.file
[root@localhost ~]# vi vitest.file

在vi编辑器的命令模式中,可以输入特定的按键(称为vi操作命令注意区别于Linux操作系统命令)进行操作,主要包括模式切换、光标移动、复制、删除、粘贴、文件内容查找及保存和退出等操作,这里只介绍一些最基本且常用的按键命令。


(1)模式切换

在命令模式中,按a.i.o等键可以快速切换至输入模式,同时确定插入点的方式和位置,以便录入文件内容,需要返回命令模式时,按Esc键即可。常见的几个模式切换键及其作用如下。

  • a:在当前光标位置之后插入内容。
  • A:在光标所在行的末尾(行尾)插入内容。
  • i:在当前光标位置之前插入内容。
  • I:在光标所在行的开头(行首)插入内容。
  • o:在光标所在行的后面插入一个新行。
  • O:在光标所在行的前面插入一个新行。

(2)移动光标

光标方向的移动,直接按↑,↓,←,→一西个方向键完成相应的光标移动。

题页移动

按Page Dewn键或Crl+F组合键向下期动一整页内容。
技Pagt lip或Cr1+8组合键向上翻动一整页内容。

行内快速跳转

  • 按Horme键成“键,散字0键将元标快速鹏转到本行的行首。
  • 接End键或1键将光标快速跳转到本行的行尾。
  • 在上述按键操作中,PageDown,Pagn Up,homm,End及方向键同样也可在w的输入模式中使用。

入行间快速跳转

  • 使用按键命令1G或者0可跳转到文件内容的第1行。
  • 使用按键命令G可跳转到文件的最后一行。
  • 使用按键会令#G可院转到文件中的第#行(其中“二”号用高体数字替换)。

为了便于查看行间期转效果,这里先学习如何在v编辑器中是示行号,只要切换到末行模式并
执行如下的”set cu”命令即可显示行号,执行"set nonu"命令可以取消量示行号.

Linux系列

 显示行号后的vi编辑器界面显示格式如下(每行开头的数字即行号):

Linux系列


(3)复制、粘贴和删除

删除操作。

  • 按×键或Delete键删除光标处的单个字符。
  • 使用按键命令dd删除当前光标所在行,使用#dd的形式还可以删除从光标处开始的#行内容(其中“#”号用具体数字替换)。
  • 使用按键命令d删除当前光标之前到行首的所有字符。
  • 使用按键命令ds删除当前光标处到行尾的所有字符。

复制操作,使用按键命令Yy复制当前行整行的内容到剪贴板,使用#Yy的形式还可以复制从光标处开始的#行内容(其中“#”号用具体数字替换).复制的内容需要粘贴后才能使用。

粘贴操作。在vi编辑器中,前一次被删除或复制的内容将会保存到剪切板缓冲区中,按p键即可将缓冲区中的内容粘贴到光标位置处之后,按P键则会粘贴到光标位置处之前。


(4)查找文件内容

在命令模式中,按/键后可以输入指定的字符串,从当前光标处开始向后进行查找(按?键则向前查找).完成查找后可以按n、N键在不同的查找结果中进行选择,例如,输入“/yum”,按Enter键后将查找出文件中的“yum”字符串并高亮显示,光标自动移动至第一个查找结果处,按n键可以移动到下一个查找结果,如图所示。

Linux系列


(5)撤销编辑及保存和退出

在对文件内容进行编辑时,有时候需要对一些失误的编辑操作进行撤销,这时可以使用按键u,U键,其中,u键命令用于取消最近一次的操作,并恢复操作结果,可以多次重复按υ键恢复已进行的多步操作;U键命令用于取消对当前行所做的所有编辑。当需要保存当前的文件内容并退出vi编辑器时,可以使用按键命令ZZ。


4.末行模式中的基本操作

在命令模式中按:键可以切换到末行模式,vi编辑器的最后一行中将显示”:提示符,用户可以在该提示符后输入特定的末行命令,完成如保存文件,退出编辑器,打开新文件,读取其他文件内容及字符串替换等丰富的功能操作。


 (1)保存文件及退出vi编辑器

保存文件,对文件内容进行修改并确认以后,需要执行如下的“w”命令进行保存。

Linux系列

若需要另存为其他文件,则需要指定新的文件名,必要时还可以指定文件路径。

例如,执行如下的“:w/root/newfile操作将把当前编辑的文件另存到/root 目录下,文件名为newfile. 

Linux系列

退出编辑器。需要退出vi编辑器时,可以执行“:q命令,若文件内容已经修改却没有保存,则仅使用”;q”命令将无法成功退出,这时需要使用如下的”q!”命令强行退出(不保存即退出)。

Linux系列

保存并退出。既要保存文件又要退出vi编辑器可以使用一条末行命令“:wq”或“:x”实现,其效果与命令模式中的ZZ命令相同,具体操作如下: 

Linux系列


(2)打开新文件或读入其他文件内容 

打开新的文件进行编辑。在当前vi编辑器中,执行”:e新的文件”形式的末行命令可以编辑(Edit)新文件。

例如,执行如下的‘:e~/initial-setup-ks.cfg”操作将直接打开当前用户宿主目录中的initial-setup-ks.cfg文件进行编辑。

:e ~/initial-setup-ks.cfg

在当前文件中读入其他文件内容,执行“r其他文件”形式的末行命令可以读入(Read)其他文件中的内容,并将其复制到当前光标所在位置。

例如,执行如下的“r/etc/filesystems操作将把系统文件/etc/filesystems中的内容复制到当前文件中。

:r /etc/filesystems

 (3)替换文件内容

在vi编辑器的末行模式中,能够将文件中特定的字符串替换成新的内容,当需要大批量修改同一内容时,使用替换功能将大大提高编辑效率,使用替换功能时的末行命令格式如下:

:[替换范围]sub/旧的内容/新的内容[/g]

在上述替换格式中,主要关键字为sb(Substitute,替换).也可以简写为s.替换范围是可选部分,默认时只对当前行内的内容进行替换,一般可以表示为以下两种形式。

  • %:在整个文件内容中进行查找并替换。
  • n.m;在指定行数范围内的文件内容中进行查找并替换。

替换格式中最末尾的/g部分也是可选内容,表示对替换范围内每一行的所有匹配结果都进行替换,省略/g时将只替换每行中的第一个匹配结果。

例如,若要将文档中第5行~第15行中的“initdefault”字符串替换为“DEFAULT”,可以执行以下操作:

:5,15 s /initdefault/DEFAULT/g

当需要对整个文档范围进行查找替换操作时,需要使用“%”符号表示全部,例如,以下操作将会把当前文件中所有的“initdefault”字符串替换为“bootdefault”

:% s /initdefault/bootdefault/g


linux学习系列--vivim编辑器的使用命令

...开,常用的就是vi、vim,这其中vi是属于Linux中的基本文本编辑器,相当于在Windows中记事本一样的存在,vim则属于是vi的升级版本,是可以进行代码补全和错误跳转等,是在开发中比较常用的一个工具。 查看详情

linux下的文本编辑工具-vi

...辑工具是十分必要的。在装了桌面的Linux系统中我们可以使用gedit等工具,像使用记事本一样直接编辑文件中的内容。但是在生产环境中,通常我们都需要远程连接到一台机器,全部要在命令模式下操作,而且服务器本身也有可... 查看详情

linux之vi文本编辑器

一、简介1、概念   文本编辑器,类unix操作系统自带文本编辑器。vim增强版本(有些版本不一定自带,如mini版)。2、使用语法     vi文件     vim文件3、vi编辑器的三种模式命令模式、插... 查看详情

简单的vi编辑器的使用

vi编辑器简单的使用1.vi编辑器的简介文本编辑器是用于编写文本、修改配置文件和程序的计算机软件,在Linux系统中最常用的文本编辑器有vi和vim。Linux系统管理员通常使用这两种文本编辑器来维护Linux系统中的各种配置文件。其... 查看详情

vi的使用

vi是Linux下默认的编辑器,有两种工作模式:命令模式和文本输入模式命令模式:输入的字符被解释为vi命令,文本模式切换至命令械:esc键文本输入模式:输入的字符为可编辑的文本,命令模式切换至文本模式:i 查看详情

vi编辑器

1、关于文本编辑器;文本编辑器有很多,比如图形模式的gedit、kwrite、OpenOffice......,文本模式下的编辑器有vi、vim(vi的增强版本)和nano......vi和vim是我们在Linux中最常用的编辑器。我们有必要介绍一下vi(vim)最简单的用法,以... 查看详情

linux命令vi文本编辑器的使用方法有哪些?

...Esc等可回到Comandmode。  3.Lastlinemode:将储存文件或离开编辑器,也可设置编辑环境,如寻找字符串、列出行号等。  不过可以把vi简化成两个模式,即是将Lastlinemode也算入Commandmode,把vi分成Command和Insertmode。  vi的基本操作... 查看详情

文件编辑器vi

1、关于文本编辑器;文本编辑器有很多,比如图形模式的gedit、kwrite、OpenOffice......,文本模式下的编辑器有vi、vim(vi的增强版本)和nano......vi和vim是我们在Linux中最常用的编辑器。我们有必要介绍一下vi(vim)最简单的用法,以... 查看详情

linux中vi编辑器怎样使用

...;,然后输入":wq!"这样就将文本保存了.然后推出了vi编辑器.如果不想保存就按一下键盘上的"ESC",输入":q!".如果不确定是否成功.可以通过"catfilename"命令来查看.4、光标的移动除了键盘上的上下左右键.也... 查看详情

linux中vi编辑器怎样使用

...;,然后输入":wq!"这样就将文本保存了.然后推出了vi编辑器.如果不想保存就按一下键盘上的"ESC",输入":q!".如果不确定是否成功.可以通过"catfilename"命令来查看.4、光标的移动除了键盘上的上下左右键.也... 查看详情

vi文本编辑器

vi编辑器是所有Unix及Linux系统下标准的编辑器,对Unix及Linux系统的任何版本,vi编辑器是完全相同的,它的强大不逊色于任何最新的文本编辑器,Vi也是Linux中最基本的文本编辑器,学会它后,您将在Linux的世界里畅行无阻。1、vi... 查看详情

linux系统中vi编辑器如何使用?

...一下相关的linux教程,在百度知道上几句话说不清楚。vi编辑器是所有Unix及Linux系统下标准的编辑器,它的强大不逊色于任何最新的文本编辑器,这里只是简单地介绍一下它的用法和一小部分指令。由于对Unix及Linux系统的任何版... 查看详情

vi的使用

vi是Linux下默认的编辑器,有两种工作模式:命令模式和文本输入模式命令模式:输入的字符被解释为vi命令,文本模式切换至命令械:esc键文本输入模式:输入的字符为可编辑的文本,命令模式切换至文本模式:i1.打开文件的命... 查看详情

linuxvi编辑器的模式分为哪三种?

...Vi,是一款由加州大学伯克利分校、BillJoy研究开发的文本编辑器。  文本编辑器有很多,比如图形模式的gedit、kwrite、OpenOffice,文本模式下的编辑器有VI、vim。vi和vim是我们在Linux中最常用的编辑器。vi或vim是Linux最基本的文本... 查看详情

第七章-vim文本编辑器

...工作都无法完成。早期的Unix都是使用的vi作为系统默认的编辑器的。你也许会有疑问,vi与vim有什么区别?可以这样简单理解,vim是vi的升级版。很多linux系统管理员都习惯用vi,那是因为他们接触linux的时候用的就是vi,vim后来才... 查看详情

linux——文本编辑器(vi)详解介绍(代码片段)

Linux——文本编辑器(Vi)详解介绍1.Vi的简介Vi是Visualinterface的简称,可以执行输出、删除、查找、替换、块操作等众多文本操作,而且用户根据自己的需要对其进行制定,这是vi的魅力所在。Vi不是一个编排程... 查看详情

linux——文本编辑器(vi)详解介绍(代码片段)

Linux——文本编辑器(Vi)详解介绍1.Vi的简介Vi是Visualinterface的简称,可以执行输出、删除、查找、替换、块操作等众多文本操作,而且用户根据自己的需要对其进行制定,这是vi的魅力所在。Vi不是一个编排程... 查看详情

linux命令vi文本编辑器的使用方法有哪些?

...以随便命名】也可以先建立一个文档touchaa然后再编辑viaa编辑器有三种模式1命令行模式2末行模式3输入模式按Esc就可以进入命令行模式也是系统默认模式输入模式可以按oia都可以进入退出可以进入末行和命令行模式末行模式可以... 查看详情