LINUX常用命令(三)使用vi编辑器


1、vi编辑器的工作模式

■  命令模式:启动vi编辑器后默认进入命令模式。该模式中主要完成光标移动、字符串查找,以及删                           除、复制、粘贴文件内容等相关操作

■  输入模式:该模式中主要的操作就是录入文件内容,可以对文本文件正文进行修改或者添加新的内                           容。处于输入模式时,vi编辑器的最后一行会出现

“—INSERT--”的状态提示信息。

■  末行模式:该模式中可以设置vi编辑环境、保存文件、退出编辑器,以及对文件内容进行查找、替换                       等操作。处于末行模式时,vi编辑器的最后一行会出现冒号“:”提示符。

切换三种模式:从命令模式输入冒号“:”可以进入末行模式,按“ESC”键则退回到命令模式。从命令模式按a、i、o键可以进入输入模式。按“ESC”键退回到命令模式。


2、命令模式中的基本操作

1)、模式切换

a   在当前光标位置之后插入内容

A   在光标所在行的末尾(行尾)插入内容

i   在当前光标位置之前插入内容

I   在光标所在行的开头(行首)插入内容

o   在光标所在行的后面插入一个新行

O   在光标所在行的前边插入一个新行

2)、移动光标

■  光标的方向移动:直接使用键盘中的四个方向键“↑、↓、←、→”移动。

■  翻页移动:

●  使用Page  Down键或Ctrl+F组合键向下翻动一整页内容

●  使用Page Up键或Ctrl+B组合键向上翻动一整页内容

●  其中 Page Down键和Page Up键同样适用于vi的输入模式

■  行内的快速跳转。

●  按Home键或^键、数字0键,将光标跳转到行首。

●  按End键或$键将光标跳转到行尾。

●  同样Home键和End键也适用于vi的输入模式

■  行间的快速跳转

●  使用按键命令1G或者gg可跳转到文件的第1行

●  使用按键命令G可跳转到文件的最后一行。

●  使用按键命令#G可跳转到文件中的第#行(其中“#”号具体数字替换)

切换到末行模式并执行“:set  nu”命令可以显示行号,执行“:set  nonu”命令可以取消显示行号。

:set nu

:set nonu

3)、复制、粘贴和删除

■  删除操作

●  使用x键或Del键删除光标处的单个字符

●  使用按键命令dd删除当前光标所在行,使用#dd的形式删除从光标处开始的#行内容(其                           中“#”号用具体数字替换)。

●  使用按键命令d^删除当前光标之前到行首的所有字符

●  使用按键命令d$删除当前光标处到行尾的所有字符

■  复制:使用按键命令yy复制当前行整行的内容到剪贴板,使用#yy复制从光标处开始的#行内容(其                    中“#”号用具体数字替换)。复制的内容需要粘贴后才能使用。

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

4)、查找文件内容

在命令模式中按/键后可以输入指定的字符串,从当前光标处开始向后进行查找(如果按?键则向前查找)。完成查找后可以按n、N键在不同的查找对象中进行选择。例如查找bin,输入“/bin”按Enter键之后将查找出文件中的“bin”字符,并提高亮度显示,按n向下查找,按N向上查找。

:/bin

5)、撤销编辑及保存退出

u键撤销一次操作,U键用于取消对当前所做的所有编辑。

在命令行模式中按ZZ可以保存退出。


3、末行模式中的基本操作

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

■  保存文件。对文件内容进行修改后并确认以后,执行“:w”命令进行保存

:w

■  如果需要另存为的话需要制定新的文件名,必要时还可以指定文件路径。例如:

:w  /root/houfile

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

:q!

■  保存并退出。“:wq“或“:x”,与在命令行模式中使用ZZ命令效果一样。

:wq

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

■  打开新文件进行编辑。执行“:e  文件名字”形式的命令即可编辑新文件。例如:

:e  ~/install.log

直接打开当前用户的宿主目录中的install.log文件进行编辑。

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

例如:

:r  /etc/passwd

把/etc/passwd 文件中的内容复制到当前文件中来。

3)、替换文件内容

末行命令格式如下:

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

sub可以简写为s。替换范围是可选部分,默认时只对当前行内容进行替换,一般可以表示为以下两种形式。

■  %:在整个文件内容中进行查找并替换。

■  n,m:在指定行数范围内的文件内容中进行查找并替换。

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

例如,替换5~10行中的bin替换为abc

:5,10   s/bin/abc/g

再举例替换文件中所有的a替换为b时

:%  s/a/b/g
时间: 2024-12-20 04:52:03

LINUX常用命令(三)使用vi编辑器的相关文章

Linux Shell命令系列(5) VI编辑器

vi编辑器是所有Unix及Linux系统下标准的编辑器,它的强大不逊色于任何最新的文本编辑器,这里只是简单地介绍一下它的用法和一小部分指令.由于对Unix及Linux系统的任何版本,vi编辑器是完全相同的,因此您可以在其他任何介绍vi的地方进一步了解它.Vi也是Linux中最基本的文本编辑器,学会它后,您将在Linux的世界里畅行无阻. 1.vi的基本概念  基本上vi可以分为三种状态,分别是命令模式(command mode).插入模式(Insert mode)和底行模式(last line

Linux常用命令(三) - pwd

Linux中用 pwd 命令来查看"当前工作目录"的完整路径. 简单得说,每当你在终端进行操作时,你都会有一个当前工作目录. 在不太确定当前位置时,就会使用pwd来判定当前目录在文件系统内的确切位置. 1.命令格式: pwd [选项] 2.命令功能: 查看"当前工作目录"的完整路径 3.常用参数: 一般情况下不带任何参数 如果目录是链接时: 格式:pwd -P  显示出实际路径,而非使用链接(link)路径.

Linux常用命令(三十一) - grep

Linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印出来.grep全称是Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是所有用户. grep的工作方式是这样的,它在一个或多个文件中搜索字符串模板.如果模板包括空格,则必须被引用,模板后的所有字符串被看作文件名.搜索的结果被送到标准输出,不影响原文件内容. grep可用于shell脚本,因为grep通过返回一个状态值来说明搜索的状态,如果模板搜索成

Linux常用命令(三十二) - wc

Linux系统中的wc(Word Count)命令的功能为统计指定文件中的字节数.字数.行数,并将统计结果显示输出. 1.命令格式: wc [选项]文件... 2.命令功能: 统计指定文件中的字节数.字数.行数,并将统计结果显示输出.该命令统计指定文件中的字节数.字数.行数.如果没有给出文件名,则从标准输入读取.wc同时也给出所指定文件的总统计数. 3.命令参数: -c 统计字节数. -l 统计行数. -m 统计字符数.这个标志不能与 -c 标志一起使用. -w 统计字数.一个字被定义为由空白.

linux常用命令(三)

文件搜索命令 which 命令;可以用于查询某个命令所存在的路径,由此可知道谁可以使用它.附加可以看到命令的别名记录,就是在ls的时候会自动对文件夹上色.前面章节讲过. whereis 命令;可以找到命令的绝对路径,以及命令帮助文档的位置. whatis 命令;查看命令的作用.显示手册上描述模块的内容. find命令 对于find命令我这里只提及部分内容,其对应内容非常多,可以通过man find进行查看 按文件名查询:find 路径 –name 文件名 按照大小进行查询:find 路径 –si

Linux常用命令(三十) - cal

cal命令可以用来显示公历(阳历)日历.公历是现在国际通用的历法,又称格列历,通称阳历."阳历"又名"太阳历",系以地球绕行太阳一周为一年,为西方各国所通用,故又名"西历". 1.命令格式: cal [参数][月份][年份] 2.命令功能: 用于查看日历等时间信息,如只有一个参数,则表示年份(1-9999),如有两个参数,则表示月份和年份 3.命令参数: -1 显示一个月的月历 -3 显示系统前一个月,当前月,下一个月的月历 -s  显示星期天为

Linux常用命令(三)查看当前计算机各方面信息

1.查看cpu: top 2.查看当前linux版本:name -a 查看当前运行的内核版本:cat /pro/version 查看发行版本信息:cat /etc/issue 查看上面所有信息:lsb_release -a 3.查看linux下的系统盘:df -l 原文地址:https://www.cnblogs.com/Jomini/p/8969929.html

Linux Linux常用命令三

在Vim中可以直接查看文件编码 :set fileencoding 即可显示文件编码格式. touch 创建文件或修改文件时间 touch [options] file-list 参数 file-list是touch将要创建或更新的文件路径名 选项 -a 只更新访问时间,不改变修改时间 -c 不创建不存在的文件 -m 只更新修改时间,不改变访问时间 -r file 使用文件file的时间更新文件的时间 -t 将时间修改为参数指定的日期,如:07081556代表7月8号15点56分

linux下oralcle11g使用edit命令默认调用vi编辑器

linux下oralcle11g使用edit命令默认调用vi编辑器: 在        $ORACLE_HOME/sqlplus/admin/glogin.sql   最后一行添加   define_editor=vi  即可. linux下oralcle11g使用edit命令默认调用vi编辑器,布布扣,bubuko.com

三十、Linux常用命令(二)

系统信息 arch 显示机器的处理器架构(1) uname -m 显示机器的处理器架构(2) uname -r 显示正在使用的内核版本 dmidecode -q 显示硬件系统部件 - (SMBIOS / DMI) hdparm -i /dev/hda 罗列一个磁盘的架构特性 hdparm -tT /dev/sda 在磁盘上执行测试性读取操作 cat /proc/cpuinfo 显示CPU info的信息 cat /proc/interrupts 显示中断 cat /proc/meminfo 校验