Vi的编辑命令
- 格式:doc
- 大小:39.50 KB
- 文档页数:5
vi编辑器的三种模式vi编辑器的三种模式通常来说,vi编辑器有三种模式,分别是⼀般指令模式、编辑模式与指令⾏命令模式。
这三种模式的作⽤分别是:⼀般指令模式(command mode)以 vi 打开⼀个⽂件就直接进⼊⼀般指令模式了(这是默认的模式,也简称为⼀般模式)。
在这个模式中,你可以使⽤上下左右按键来移动光标,你可以使⽤删除字符或删除整⾏来处理⽂件内容,也可以使⽤复制、黏贴来处理你的⽂件数据。
编辑模式(insert mode)编辑模式可以对内容进⾏编辑,按下i, I, o, O, a, A, r, R等任何⼀个字母之后即可进⼊编辑模式。
如果要回到⼀般指令模式时,则必须要按下Esc这个按键即可退出编辑模式。
命令⾏模式(command-line mode)在⼀般模式当中,输⼊:, /, ? 三个中的任何⼀个按钮,就可以将光标移动到最底下那⼀⾏。
在这个模式当中,可以提供你搜寻资料的动作,⽽读取、存盘、⼤量取代字符、离开 vi 、显⽰⾏号等等的动作则是在此模式中达成的!总之,三者的关系可以⽤下图来概况:各模式下的快捷键⼀般指令模式移动光标的⽅法h 或向左箭头键(←)光标向左移动⼀个字符j 或向下箭头键(↓)光标向下移动⼀个字符k 或向上箭头键(↑)光标向上移动⼀个字符l 或向右箭头键(→)光标向右移动⼀个字符hjkl 是排列在⼀起的,因此可以使⽤这四个按钮来移动光标。
如果想要进⾏多次移动的话,例如向下移动 30 ⾏,可以使⽤ “30j” 或 “30↓” 的组合按键,亦即加上想要进⾏的次数(数字)后,按下动作即可![Ctrl] + [f]屏幕向下移动⼀页,相当于 [Page Down]按键[Ctrl] + [b]屏幕向上移动⼀页,相当于 [Page Up] 按键[Ctrl] + [d]屏幕向下移动半页[Ctrl] + [u]屏幕向上移动半页n<space>n 表⽰数字,例如 20 。
按下数字后再按空格键,光标会向右移动这⼀⾏的 n 个字符。
vi命令在句尾加相同字符使用vi命令,在句尾加相同字符是一种常见的编辑操作,可以通过以下方式实现:1. 使用“$”命令将光标移动到当前行的末尾,然后进入插入模式,在末尾添加相同字符,最后按下“Esc”键退出插入模式。
2. 使用“:s”命令进行替换操作,将句尾的字符替换为相同字符。
下面是具体的操作步骤和示例:1. 使用“$”命令实现在句尾加相同字符:- 打开vi编辑器:在终端中输入“vi 文件名”命令,打开待编辑的文件。
- 光标移动到当前行的末尾:按下“Shift + 4”键,将光标移动到当前行的末尾。
- 进入插入模式:按下“Shift + a”键,进入插入模式,此时光标会移动到当前行的末尾。
- 添加相同字符:输入相同字符,可以是字母、数字或符号等,按下“Enter”键换行。
- 退出插入模式:按下“Esc”键,退出插入模式,此时会返回到命令模式。
- 保存并退出:输入“:wq”命令,按下“Enter”键,保存修改并退出vi编辑器。
示例:假设待编辑的文件内容如下:```这是一段示例文本。
```操作步骤:- 打开vi编辑器:在终端中输入“vi example.txt”命令,打开文件example.txt。
- 光标移动到当前行的末尾:按下“Shift + 4”键,将光标移动到当前行的末尾。
- 进入插入模式:按下“Shift + a”键,进入插入模式,此时光标会移动到当前行的末尾。
- 添加相同字符:输入“!”,按下“Enter”键换行。
- 退出插入模式:按下“Esc”键,退出插入模式,此时会返回到命令模式。
- 保存并退出:输入“:wq”命令,按下“Enter”键,保存修改并退出vi编辑器。
修改后的文件内容如下:```这是一段示例文本!```2. 使用“:s”命令进行替换操作:- 打开vi编辑器:在终端中输入“vi 文件名”命令,打开待编辑的文件。
- 进入命令模式:按下“Esc”键,确保处于命令模式。
- 执行替换操作:输入“:s/原字符/替换字符/g”命令,其中“原字符”为句尾的字符,可以使用正则表达式表示,如“.$”表示任意字符结尾;“替换字符”为要替换成的字符。
linux文件编辑vi的常见操作命令vi是一款常用的文本编辑器,在Linux系统中被广泛使用。
下面将介绍vi的常见操作命令,帮助初学者快速掌握vi的基本使用。
1. 打开文件:使用vi命令加上要编辑的文件名,例如`vi filename`。
如果文件不存在,则会创建一个新文件。
2. 保存文件:在正常模式下,按下`:w`命令可以将文件保存。
如果文件是新创建的,需要指定文件名,例如`:w newfilename`。
3. 退出vi:在正常模式下,输入命令`:q`可以退出vi。
如果文件有未保存的修改,vi会提示保存或放弃修改。
如果想强制退出vi,可以使用命令`:q!`。
4. 插入文本:在正常模式下,按下`i`命令可以进入插入模式,在光标位置前插入文本。
按下`a`命令可以在光标位置后插入文本。
按下`o`命令可以在下一行插入新行并进入插入模式。
5. 删除文本:在正常模式下,按下`x`命令可以删除光标所在位置的字符。
按下`dd`命令可以删除整行。
按下`dw`命令可以删除一个词。
按下`d$`命令可以删除光标位置到行尾的内容。
6. 复制和粘贴文本:在正常模式下,按下`yy`命令可以复制整行。
按下`yw`命令可以复制一个词。
按下`p`命令可以粘贴复制的内容。
7. 撤销和重做:在正常模式下,按下`u`命令可以撤销上一步操作。
按下`Ctrl + r`命令可以重做被撤销的操作。
8. 查找和替换:在正常模式下,按下`/text`命令可以向下查找匹配的文本。
按下`?text`命令可以向上查找匹配的文本。
按下`:%s/old/new/g`命令可以替换全文中的old为new。
9. 移动光标:在正常模式下,按下`h`命令可以将光标向左移动一个字符。
按下`j`命令可以将光标向下移动一行。
按下`k`命令可以将光标向上移动一行。
按下`l`命令可以将光标向右移动一个字符。
按下`gg`命令可以将光标移动到文件开头。
按下`G`命令可以将光标移动到文件末尾。
v i操作命令大全HUA system office room 【HUA16H-TTMS2A-HUAS8Q8-HUAH1688】一vi的操作模式vi提供两种操作模式:输入模式(insert mode)和指令模式(command mode)。
在输入模式下,用户可输入文本资料。
在指令模式下,可进行删除、修改等各种编辑动作。
在输入模式下,按Esc键切换到指令模式下。
在指令模式下,按输入指令(i、a、o等)进入输入模式。
二进入vi$ vi filename直接键入“vi + 所要编辑的文件名”,即可对指定的文件进行编辑。
如果指定的文件为新文件,则提示:“New file”,否则显示该文件的当前内容。
$ view filename以只读方式打开文件filename三指令模式3.1进入输入模式a 在当前游标之后输入A 在当前行之末输入i 在当前游标之前输入I 在当前行之首输入o 在当前行之下新增一行,并在新增行输入O 在当前行之上新增一行,并在新增行输入输入结束后,按Esc键退出输入模式。
3.2游标移动h 向左移动一个字元 l 向右移动一个字元 j 向下移动一个字元 k 向上移动一个字元 b 左移一个单词,至词首 w 右移一个单词,至词尾 0 移到当前行行首 $ 移到当前行行尾 + 移至下一行的行首 - 移至上一行的行首 H 移至视窗的第一行 M 移至视窗的中间一行 L 移至视窗的最后一行 G 移至该文件的最后一行 nG 移至该文档的第n行 n+ 下移n行 n- 上移n 行3.3视窗移动*<Ctrl> + f 视窗下卷一页 *<Ctrl> + b 视窗上卷一页 <Ctrl> + d 视窗下卷半页<Ctrl> + u 视窗上卷半页 * <Ctrl> + e 视窗下卷一行 * <Ctrl> + y 视窗上卷一行3.4删除操作x 删除游标所在字元 X 删除游标前一字元 dw 从游标当前位置开始向后删除一个单词 db 从游标当前位置开始向前删除一个单词 d0 从行首删除至当前游标位置 d$ 从游标当前位置删除至行尾 dd 删除游标所在行 D 同d$3.5修改操作s 修改游标所在字元,修改完成后按Esc键结束 S 修改整行内容,修改完成后按Esc键结束 r 替换当前游标所在字元 R 进入替换状态,直至按Esc键结束 cw 修改一个单词(从游标位置至词尾) cb 修改一个单词(从词首至游标位置) cc 修改整行内容,完成后按Esc 键结束,同S c0 修改行首至游标位置的内容 c$ 修改游标位置至行尾的内容 ~ 游标所在字元大小写切换3.6指令重复在指令模式中,可在指令前面加入一个数字n,则该指令会重复执行n次。
进入vi的命令 (1)移动光标类命令 (1)屏幕翻滚类命令 (2)编辑插入文本类命令 (3)删除命令 (5)搜索及替换命令 (6)选项设置 (8)组合命令 (10)最后行方式命令 (14)寄存器操作 (15)进入vi的命令vi filename :打开或新建文件,并将光标置于第一行首vi +n filename :打开文件,并将光标置于第n行首vi + filename :打开文件,并将光标置于最后一行首vi +/pattern filename:打开文件,并将光标置于第一个与pattern匹配的串处vi -r filename :在上次正用vi编辑时发生系统崩溃,恢复filenamevi filename....filename :打开多个文件,依次进行编辑移动光标类命令h :光标左移一个字符l :光标右移一个字符space:光标右移一个字符Backspace:光标左移一个字符k或Ctrl+p:光标上移一行j或Ctrl+n :光标下移一行Enter :光标下移一行w或W :光标右移一个字至字首b或B :光标左移一个字至字首e或E :光标右移一个字至字尾) :光标移至句尾( :光标移至句首}:光标移至段落开头{:光标移至段落结尾nG:光标移至第n行首n+:光标下移n行n-:光标上移n行n$:光标移至第n行尾H :光标移至屏幕顶行M :光标移至屏幕中间行L :光标移至屏幕最后行0:(注意是数字零)光标移至当前行首$:光标移至当前行尾^ 光标移到行首f 光标移到当前光标位置后面的第一个指定的字符下F 光标移到当前光标位置前面的第一个指定的字符下t 光标移到当前光标位置后面的第一个指定的字符前T 光标移到当前光标位置前面的第一个指定的字符前% 光标移动到与当前括号匹配的括号处:n 光标移动到指定行按数字:0:移到文章的开头。
按G:移动到文章的最后。
按w:光标跳到下个字的开头按e:光标跳到下个字的字尾按b:光标回到上个字的开头按:#l:光标移到该行的第#个位置,如:5l,56l。
VI编辑器常⽤指令以及实践⽰例VI编辑器常⽤指令以及实践⽰例⼀.理论知识1.1 Vi编辑器vi编辑器是所有Unix及Linux系统下标准的编辑器,它的强⼤不逊⾊于任何最新的⽂本编辑器, Vi也是Linux中最基本的⽂本编辑器.1.1.1vi的基本概念基本上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,也可以设置编辑环境,如寻找字符串、列出⾏号……等。
1.1.2 vi的基本操作1) 进⼊vi在系统提⽰符号输⼊vi及⽂件名称后,就进⼊vi全屏幕编辑画⾯:$ vi myfile不过有⼀点要特别注意,就是您进⼊vi之后,是处于「命令⾏模式(command mode)」,您要切换到「插⼊模式(Insert mode)」才能够输⼊⽂字。
2) 切换⾄插⼊模式(Insert mode)编辑⽂件在「命令⾏模式(command mode)」下按⼀下字母「i」就可以进⼊「插⼊模式(Insert mode)」,这时候你就可以开始输⼊⽂字了。
3)Insert 的切换⽬前处于「插⼊模式(Insert mode)」,您就只能⼀直输⼊⽂字,如果您发现输错了字!想⽤光标键往回移动,将该字删除,就要先按⼀下「ESC」键转到「命令⾏模式(command mode)」再删除⽂字。
4)退出vi及保存⽂件在「命令⾏模式(command mode)」下,按⼀下「:」冒号键进⼊「Last line mode」,例如:: w filename (输⼊「w filename」将⽂章以指定的⽂件名filename 保存): wq (输⼊「wq」,存盘并退出vi): q! (输⼊q!,不存盘强制退出vi)1.1.3 命令⾏模式(command mode)功能键1)插⼊模式按「i」切换进⼊插⼊模式「insert mode」,按“i”进⼊插⼊模式后是从光标当前位置开始输⼊⽂件;按「a」进⼊插⼊模式后,是从⽬前光标所在位置的下⼀个位置开始输⼊⽂字;按「o」进⼊插⼊模式后,是插⼊新的⼀⾏,从⾏⾸开始输⼊⽂字。
Vi编辑器命令大全进入vi的命令vi filename :打开或新建文件,并将光标置于第一行首vi +n filename :打开文件,并将光标置于第n行首vi + filename :打开文件,并将光标置于最后一行首vi +/pattern filename:打开文件,并将光标置于第一个与pattern匹配的串处vi -r filename :在上次正用vi编辑时发生系统崩溃,恢复filenamevi filename....filename :打开多个文件,依次进行编辑移动光标类命令h :光标左移一个字符l :光标右移一个字符space:光标右移一个字符Backspace:光标左移一个字符k或Ctrl+p:光标上移一行j或Ctrl+n :光标下移一行Enter :光标下移一行w或W :光标右移一个字至字首b或B :光标左移一个字至字首e或E :光标右移一个字至字尾) :光标移至句尾( :光标移至句首}:光标移至段落开头{:光标移至段落结尾nG:光标移至第n行首n+:光标下移n行n-:光标上移n行n$:光标移至第n行尾H :光标移至屏幕顶行M :光标移至屏幕中间行L :光标移至屏幕最后行0:(注意是数字零)光标移至当前行首$:光标移至当前行尾屏幕翻滚类命令Ctrl+u:向文件首翻半屏Ctrl+d:向文件尾翻半屏Ctrl+f:向文件尾翻一屏Ctrl+b;向文件首翻一屏Ctrl+e:向文件尾翻一行Ctrl+y;向文件首翻一行nz:将第n行滚至屏幕顶部,不指定n时将当前行滚至屏幕顶部。
插入文本类命令i :在光标前I :在当前行首a:光标后A:在当前行尾o:在当前行之下新开一行O:在当前行之上新开一行r:替换当前字符R:替换当前字符及其后的字符,直至按ESC键s:从当前光标位置处开始,以输入的文本替代指定数目的字符S:删除指定数目的行,并以所输入文本代替之ncw或nCW:修改指定数目的字nCC:修改指定数目的行删除命令ndw或ndW:删除光标处开始及其后的n-1个字do:删至行首d$:删至行尾ndd:删除当前行及其后n-1行x或X:删除一个字符,x删除光标后的,而X删除光标前的Ctrl+u:删除输入方式下所输入的文本搜索及替换命令/pattern:从光标开始处向文件尾搜索pattern?pattern:从光标开始处向文件首搜索patternn:在同一方向重复上一次搜索命令N:在反方向上重复上一次搜索命令:s/p1/p2/g:将当前行中所有p1均用p2替代:n1,n2s/p1/p2/g:将第n1至n2行中所有p1均用p2替代:g/p1/s//p2/g:将文件中所有p1均用p2替换选项设置:set nu 显示行号:set nonu 不显示行号all:列出所有选项设置情况term:设置终端类型ignorance:在搜索中忽略大小写list:显示制表位(Ctrl+I)和行尾标志($)number:显示行号report:显示由面向行的命令修改过的数目terse:显示简短的警告信息warn:在转到别的文件时若没保存当前文件则显示NO write信息nomagic:允许在搜索模式中,使用前面不带“\”的特殊字符nowrapscan:禁止vi在搜索到达文件两端时,又从另一端开始mesg:允许vi显示其他用户用write写到自己终端上的信息最后行方式命令:n1,n2 co n3:将n1行到n2行之间的内容拷贝到第n3行下:n1,n2 m n3:将n1行到n2行之间的内容移至到第n3行下:n1,n2 d :将n1行到n2行之间的内容删除:w :保存当前文件:e filename:打开文件filename进行编辑:x:保存当前文件并退出:q:退出vi:q!:不保存文件并退出vi:!command:执行shell命令command:n1,n2 w!command:将文件中n1行至n2行的内容作为command的输入并执行之,若不指定n1,n2,则表示将整个文件内容作为command的输入:r!command:将命令command的输出结果放到当前行寄存器操作"?nyy:将当前行及其下n行的内容保存到寄存器?中,其中?为一个字母,n为一个数字"?nyw:将当前行及其下n个字保存到寄存器?中,其中?为一个字母,n为一个数字"?nyl:将当前行及其下n个字符保存到寄存器?中,其中?为一个字母,n为一个数字"?p:取出寄存器?中的内容并将其放到光标位置处。
一、vi基本命令1)光标命令左h 上j 下k 右lnG ——n为行数,该命令立即使光标跳到指定行;n为空,光标跳到文件最后一行。
Ctrl+G——光标所在位置的行数和列数报告w,b——使光标向前或向后跳过一个单词2)编辑命令(n)dd 删除(n)yy 复制i 光标前插入a 当前字母后插入r 在当前光标处替换cw 替换光标所在处的单词(从光标开始处)dw 删除光标所在处的单词x 删除(右)X 删除(左)u 撤销. 重复上次操作o 插入新行J 合并两行A 行尾:.,3w /tmp/xx:r /tmp/xx3)查找命令f 查找/ 查找4)复制粘贴命令(n)yy 拷贝n行到剪切板p 粘贴(后)P 粘贴(当前)二、vi选项设置vi是一个强大的编辑器,它不仅可以用来处理我们平时的文本工作,还可以用来写程序文件。
在用vi进行程序编辑时,它可以实现语法加亮显示、自动缩进、括号匹配等编辑功能。
为控制不同的编辑功能,vi 提供了很多内部选项。
利用:set 命令可以设置选项。
基本语法为:: set option 设置选项option常见的功能选项包括:autoindent 设置该选项,则正文自动缩进ignorecase 设置该选项,则忽略规则表达式中大小写字母的区别number 设置该选项,则显示正文行号ruler 设置该选项,则在屏幕底部显示光标所在行、列的位置tabstop 设置按Tab 键跳过的空格数。
例如:set tabstop=n,n默认值为81)语法加亮显示: syntax on 该命令在vi中打开语法加亮显示的功能。
这样以后在输入的字符中,vi就会自动的识别出关键字,字符串以及其他的一些语法元素,并以不同的颜色来显示出来。
2)自动缩进在vi中自动缩进的选项一般有以下的几种:autoindent: 在这种缩进形式中,新增加的行和前一行有相同的缩进形式。
smartindent: 在这种缩进模式中,每一行都和前一行有相同的缩进量,同时能够正确的识别出{和},当遇到右花括号(}),则取消了缩进形式。
Vi的编辑命令Unix及其相似的操作系统中,为方便各种用户在各个不同的环境中使用,提供了一系列的编辑器,包括ex,edit,ed和vi,其中ex,edit,ed都是行编辑器,现在已很少有人使用,vi 是linux中的全屏幕编辑器,其地位如同dos中的edit一样,它可以执行输出、删除、查找、替换、块操作等众多文本操作,它是一个文本编辑程序。
Red hat Linux9中提供的是vim,vi是vim的一个符号链接。
(8)vi的进入和退出建立新文件:输入命令vi,然后输入内容,最后存盘退出,给出文件名,使用命令:“:wq 文件名”输入命令“vi 文件名”,然后编辑内容,最后存盘退出编辑文件:输入命令“vi 文件名”,此文件已存在,编辑后存盘退出退出命令:存盘退出“:wq”,不存盘退出“:q”注意:vi有两种模式:指令模式和编辑模式,进入后为指令模式,此时输入相关编辑命令,即进入编辑模式,编辑完后按Esc即回到指令模式。
(8)进入输入模式、删除和修改指令模式指令:a――从光标所在位置后面开始输入新文本A――从光标所在行的行尾开始输入新的文本i――从光标所在位置前面开始插入数据I――从光标行的第一个非空格字符前面开始插入文本o――在光标所在行下新增一行并进入输入模式O――在光标所在行上方新增一行并进入输入模式删除与修改:x――删除光标处的一个字符dd――删除光标所在行r――修改光标所在字符,r后接着要修正的字符R――进入替代状态,输入的文本会覆盖原来的数据s――删除光标所在字符,并进入输入模式S――删除光标所在的行,并进入输入模式(8)光标的移动光标除可以用方向键进行光标逐字符的移动外,同方向键等同的光标移动命令为h――左移一列, l――右移一列k――上移一列, j――下移一列,如果要快速移动光标,可以在移动命令前加数字,如:3j,6k,10l,3h以单词为单位进行移动:w――将光标移动到下一个单词的开头b――将光标向后移动到一个单词的开头,与w功能相反e――将光标移到下一个单词的末尾(最后一个字符处)可以在这些命令前加上数字,使光标进行多个单词的移动行内光标的快速移动:$――将光标移动到当前行的行末0――将光标移动到当前行的行首n|――将光标移动到当前行的第n个字符上fm――将光标移动到文本的下一个字符m上使用行号定位::set number――使编辑器显示行号:set nonumber――使编辑器不显示行号nG――将光标移动到第n行G――将光标移动到最后一行:n回车――将光标移动到第n行:$回车――将光标移动到文件的最后一行将光标移动到当前屏幕的某些位置:L――将光标移动到屏幕的最下面一行M――将光标移动到屏幕的中间一行H――将光标移动到屏幕的最上面一行将光标返回到原来位置:‘’――两个单引号,即击单引号两次,用于在一处进行修改后要返回原来的位置让屏幕显示文件的指定位置(翻屏): ctrl+d――屏幕定位到文件的下半屏文本ctrl+u――屏幕定位到文件的上半屏文本 ctrl+f――屏幕定位到文件的下一屏文本 ctrl+b――屏幕定位到文件的上一屏文本(8)字符的查找从文件头向文件尾查找字符串:/字符串 (回车)从文件头向文件尾查找下一个指定字符串: n从文件尾向文件头反向查找字符串: ?字符串(回车)从文件尾向文件头反向查找下一个指定字符串: N(8)文本的删除命令删除字符: x――删除光标处的一个字符3x――删除从光标开始的3个字符删除行: dd——删除当前行,光标移到下一行,并成为当前行10dd――删除当前行开始的10行,光标移到下一行,并成为当前行删除单词: dw——删除光标处的一个单词,也可以使用数字来扩充该命令注意:如果将光标定位在一个单词的中间某个字符上,使用dw 命令后,vi 将删除从光标开始和空格字符结束的所有字符在vi中,所有除空格以外的非字母数字字符,都将视为一个单词。
如果当前行的当前光标到行末的单词数不够删除时,vi将删除下一行的单词。
删除一行的一部分内容: D――将光标置于一行的中间,输入D,则将删除从光标开始到行末的所有文字。
(不是整行)删除光标至某一个字符之间的文本:dfm——该命令删除从光标到第一个m之间的所有文本(包括光标处字母和字母m)使用行号删除文本行: :5d——删除第5行的文本:5,10d——删除第5至10行的文本:3dd——删除从光标开始的3行内容:10,$d——删除从第10行开始到行末的内容(6)文本添加命令:i——在光标的左侧添加文本a——在光标的右侧添加文本I——将光标移到当前的行首,并切换到添加模式A——将光标移到当前的行尾,并切换到添加模式O--在光标的上方插入一个新行o——在光标的下方插入一个新行(7)撤消和重复命令对于Vi来说,它只能撤消最后一次操作,而vim是它的增强,因此它可以进行多次撤消。
撤消命令: u--撤消最后一次修改U——撤消对当前行的所有修改,前提是光标没有移出当前行重复命令:.——英语的点命令“.”,它可以重复执行最后一次文本修改命令。
(8)vi的替换命令文本替换命令:①替换字符: r——输入r后,不用切换到编辑模式,紧接着输入你用于替换的字符②逐字符替换文本: R——可以逐字符替换光标后面的文本③多个字符替换单个字符: s——实现删除光标处的一个字符,然后可以插入多个字符,相当于光标后添加,不会替换后面的字符④多个单词替换单个单词: cw——可以删除光标处的一个单词,并进入添加模式。
⑤行替换: cc--删除当前行的所有字符,然后切换到插入模式。
⑥修改行的剩余部分: C——删除从光标开始到行末的所有字符,进入添加模式删除和替换命令的对照命令类型删除替换字符x r单词dw cw行dd cc从光标到行尾之间的部分 D C从光标到字符m之间的部分dfm cfm全局替换命令:①搜索当前行的第一个实例: :s——查找和替换命令:s/字符串——查找文本中的所有字符串:s/字符串1/字符串2——在文本中搜索字符串1,并将光标所在行的第一个字符串1替换成字符串2②搜索指定范围内的第一个实例::1,10s/字符串1/字符串2——搜索第1至10行,将每行内的第一个字符串1替换成字符串2③设置过滤条件进行搜索: :g/过滤条件/s/字符串1/字符串2——将文本内符合过滤条件的行的第一个字符串1替换成字符串2④在同一行中替换所有实例: :s/字符串1/字符串2/g――将光标所在行的所有字符串1替换成字符串2:1,$s/字符串1/字符串2/g——将全文范围内所有行的字符串1替换成字符串2 注意:前面1-3命令都只能搜索和替换第一个实例,命令4因为加了参数g,它在末尾,可以替换范围内的所有实例(9) 移动和复制文本复制是指先将要复制的文本复制到缓冲区,再使用粘贴命令进行粘贴.复制和粘贴行: yy――将光标所在行复制到缓冲区p――将缓冲区的内容粘贴到光标所在位置,可以多次使用p命令将缓冲区内的文本进行粘贴到目标位置P——将复制的行粘贴到光标位置的上一行,而p命令是将复制的行粘贴到光标位置的下一行,总之这两个命令都不会粘到光标当前行剪切和粘贴行: 当删除文本行之后,相当于执行了“剪切”命令,然后再使用p或P命令进行文本粘贴复制字符和单词: yw——复制从当前光标到该单词结束的文字到缓冲区yl——复制当前光标处所在的一个字符到缓冲区yfm——复制当前光标处到第一个字符m处的文字到缓冲区(包括m)复制文本块: :行号,行号 copy 行号——将第一到第二行的文本复制到第三个行号指定行的后面(将文本块复制到第三行号指定行的下面)移动文本块: :行号,行号 move 行号——将第一到第二行的文本移动到第三个行号指定行的后面(将文本块复制到第三行号指定行的下面)注意:在文本块的复制和移动命令中,“.”表示当前行,“$”表示文件尾,“0”表示文件头.(10) 文件保存命令Vi不仅提供了文件存盘命令,用户也可以使用vi的放弃文件保存命令,或者在已有的文件尾添加内容的命令①保存对文件的修改(不退出): :w②保存对文件的修改后退出编辑器::wq③保存新版本(文件另存为): :w 文件名——将当前文件另存为文件名所指定的副本④取消对文件的修改: :q或者:q!⑤保存文本块: :行号,行号 write 文件名――将指定范围内的文本块保存到一个新文件中,命名为指定的文件名注意:如果要保存到的新文件已存在,要进行覆盖,可在命令后加一个叹号“!”⑥向文件追加文本: :行号,行号 write >>文件名――将文本块追加到一个文件的末尾。
(11)vi编辑器和shell的交互①读入文本文件:在编辑文件时,经常需要读入另外一个文件的内容。
格式: :行号 read 文件名――将指定的文件的内容读入到当前vi编辑器指定行号的下面②在vi中运行子shell:格式: :!命令——在编辑中运行“!”后指定的命令,将结果显示在vi中,按回车键后清屏,不影响原来的编辑③读入shell命令行的输出:前面的命令将结果输出到屏幕上,并不影响当前被编辑的文件,也可以将shell命令的输出读入到当前被编辑的文件中。
格式: :行号 read !命令——将“!”后的命令执行,将结果读入到指定的行后面。