嵌入式Linux上的C语言编程实践--第3章 Linux的文本编辑工具VI

合集下载

Linux下的vi编辑器的简单使用操作方法

Linux下的vi编辑器的简单使用操作方法

Linux下的vi编辑器的简单使⽤操作⽅法vi编辑器的使⽤:vi编辑器有三种基本⼯作模式,分别是命令⾏模式、⽂本输⼊模式、末⾏模式。

1.命令⾏模式该模式是进⼊vi编辑器后的默认模式,任何时候,不管⽤户处于何种模式,按下esc键即可进⼊命令⾏模式。

在命令⾏模式下,可以输⼊vi命令来管理⾃⼰的⽂档。

此时在键盘上输⼊任何字符都被当作编辑命令,⽽不是输⼊字符。

输⼊的字符并不会在屏幕上显⽰,若是合法的vi命令,则会完成相应的动作,否则会响铃报警。

2.⽂本输⼊模式命令⾏模式下输⼊以下⼏个命令则会进⼊⽂本输⼊模式。

i: 插⼊命令,会将⽂本插⼊到光标所在位置之前I: 插⼊命令,会将⽂本插⼊到光标所在⾏的⾏⾸a: 追加⽂本命令,会将⽂本追加到光标当前位置之后A: 追加⽂本命令,会将⽂本追加到光标所在⾏的末尾o: 空⾏插⼊命令,将在光标所在⾏的下⾯插⼊⼀个空⾏,并将光标置于该⾏的⾏⾸O: 空⾏插⼊命令,将在光标所在⾏的上⾯插⼊⼀个空⾏,并将光标置于该⾏的⾏⾸c: 修改命令r: 取代命令s: 替换命令在该模式下,⽤户输⼊的任何字符都被当做⽂件内容保存起来,并显⽰在屏幕上。

3.末⾏模式命令⾏模式下,⽤户按下:键即可进⼊末⾏模式,此时vi会在显⽰窗⼝的最后⼀⾏显⽰⼀个:作为末⾏模式的说明符,等待⽤户输⼊命令。

多数⽂件管理命令都是在此模式下执⾏的。

末⾏命令执⾏完后,vi会⾃动回到命令⾏模式4.vi⽂本的删除命令:vi编辑器可以在编辑模式和命令⾏模式下删除⽂本。

命令⾏模式下,vi常⽤删除命令x 删除光标处的字符。

若在x之前加上⼀个数字n,则删除从光标所在位置开始向右的n个字符。

X 删除光标前⾯的字符。

若在X之前加上⼀个数字n,则删除从光标前⾯那个字符开始向左的n个字符。

dd 删除光标所在的整⾏。

前⾯加上数字n,则删除当前⾏以及其后的n-1⾏。

D 或 d$ 删除从光标所在处开始到⾏尾的内容。

d( 删除到上⼀句开始的所有字符d) 删除到下⼀句开始的所有字符d{ 删除到上⼀段开始的所有字符d} 删除到下⼀段开始的所有字符d0 删除从光标前⼀个字符开始到⾏⾸的内容dw 删除⼀个单词。

Linux学习-vi编辑器

Linux学习-vi编辑器

Linux学习-vi编辑器##################################################vi编辑器简介这是⽂本的编辑器,后⾯多次⽤到了这个命令,导致我不会,验证影响了我的进度vi是Linux中最经典的⽂本编辑器,为什么使⽤这个,就是速度快,vi的核⼼设计思想,让程序员的⼿指始终保持在键盘的核⼼区域,就能完成所有编辑操作vi只能编辑不能排版,没有图像界⾯vi不⽀持⿏标操作,没有菜单,只有命令,vim是从vi发展出来的,有代码补全,等功能,被称为编辑器之神,程序员都是⾸选vim,在Linux中直接把vi做成了vim的软连接,你使⽤vi命令就是使⽤的vim###################################################vim编辑:vim是LINUX系统必备啊安装:sudo apt-get install vim配置:sudo vim /etc/vim/vimrc,在这个⾥⾯进⾏配置,更加详细的配置上⽹查##############################################vi打开新建⽂件:vi ⽂件名,⽂件存在就是打开,不存在就是新建,vi hello.pyvi ⽂件名 +⾏数,打开⽂件并且定位⾏,异常处理,如果vi异常退出,在磁盘上可能会有保持的交换⽂件,下次在使⽤vi时,会看到发现交换⽂件,按d可以删除交换⽂件,注意输⼊的时候关闭输⼊法,在vim格式未保存时退出,或者两台机器同时操作⼀个⽂件时都会出现这个问题(保存在⼀个swap⽂件)看看当前的⽂件内容是不是原先的内容,如果觉得和你想要的差不多不需要恢复,那就直接执⾏rm指令删除那个swap⽂件执⾏这个操作不会对你现在的⽂件产⽣影响。

如果内容变化较⼤,你想要恢复,那就按:q##########################################⼯作模式有三种⼯作模式,这个很重要,1,命令模式,打开和esc,命令模式,使⽤vi命令打开⼀个⽂件,就是命令模式,命令模式下,可以进⾏常规的操作,⽐如定位,翻页,复制,粘贴,删除,在其他的图形编辑器下都是⿏标操作的,但是vi是通过命令的,2,末⾏模式,冒号:末⾏模式,执⾏保存,退出等操作,w就是write,写⼊的意思,保存,q就是退出,quit的意思,退出,末⾏模式是出⼝,命令模式就是⼊⼝,怎么进⼊出⼝,就是输⼊冒号:,进⼊末⾏模式,从末⾏模式到命令模式,按⼀下esc就进⼊命令模式3,编辑模式,i,编辑模式,正常的编辑⽂字,输⼊字母i,insert,就进⼊了编辑模式,不能使⽤⿏标,其他基本⼀样,按esc返回命令模式,在命令模式可以快速定位,在编辑模式只能上下键定位代码,编辑模式到命令模式,命令模式到末⾏模式,编辑模式不能直接到末⾏模式,现在基本可以操作了⼯作模式练习:⽂件改完之后⽤命令q和wq和!w都不能退出来!上⽹⼀查才发现原来vi命令在直接⽤vi+enter进⼊⽂件的时候这些命令退出不了,解决⽅法:直接⽤ctrl+z退出就⾏了.test.py.swp .test.py.swo,这种⽂件都是不正常退出⽂件导致的交换⽂件,这些可以使⽤rm直接删除,末⾏模式的命令:w 保持:q 退出:wq 保持退出:q! 强⾏退出,不保存退出,这也是⽐较常⽤的,⽐如修改错了,:x 这也是保持退出###########################################常⽤命令:vi⾮常强⼤,命令⾮常多,不要期望⼀下⼦都记住,要按照使⽤频率学习,使⽤vi命令的时候,命令线路图重复次数,输⼊⼀个数字,跟上⼀个命令,就可以重复执⾏指定次数,1,移动和选择(多练),这个⽐较多,2,编辑操作,删除,复制,粘贴,替换,3,撤销和重复4,查找和替换5,编辑注意关闭中⽂输⼊法,因为输⼊vi命令的时候是没有显⽰的,#############################################进⼊vi的命令vi filename :打开或新建⽂件,并将光标置于第⼀⾏⾸vi +n filename :打开⽂件,并将光标置于第n⾏⾸vi + filename :打开⽂件,并将光标置于最后⼀⾏⾸vi +/pattern filename:打开⽂件,并将光标置于第⼀个与pattern匹配的串处vi -r filename :在上次正⽤vi编辑时发⽣系统崩溃,恢复filenamevi filename....filename :打开多个⽂件,依次进⾏编辑##########################################移动命令上下左右的移动,h向左,j向下,k向上,l向右⾏内移动,w 向前移动单词,b先后移动⼀个单词,0数字零⽴刻到⾏⾸,$dollor符号⽴刻到⾏尾,^到⾏⾸,第⼀个不是空⽩字符的位置,⾏数移动:gg ⽂件顶部,G⽂件末尾,这个命令⾮常的重要,数字gg,移动到指定⾏数,数字G移动到指定⾏数,:数字,移动到对应⾏数,⼀般都是还是⽤go,屏幕移动,ctrl+b,向上翻页,ctrl+f,向下翻页,H屏幕顶部,M屏幕中间,L屏幕底部,注意只需要⼀个⼤写字母,段落移动, {这是往上寻找段落,}这是往下寻找段落,这是⽐较常⽤的切换⽅式括号切换,⼩括号,⽅括号,花括号,都是程序员常⽤的,可以使⽤百分号%切换括号如果有代码需要随后处理,需要参考别的代码,把编号移⾛,到时候怎么回来呢?可以使⽤标记,可以使⽤m 输⼊⼀个字母,然后移动光标,怎么胡来输⼊单引号,然后输⼊直接的标记的字母 ‘k,不⽤管标记如何删除,相同的会覆盖,删除⾏标记也会删除,不⽤管,选中命令,要复制要先选中,可以使⽤v,切换到可视模式,V 切换到可视⾏模式,ctrl+v,可视块模式,可以竖着选,很厉害,可视模式下,可以使⽤移动命令,快速选中⽂本,#############################################撤销命令u,在命令模式,输⼊u,撤销上次的命令,可以不停的回撤,到最初的命令,undo,ctrl+r,在命令模式,就是恢复撤销的命令,这两个⾮常的重要,保命的命令,删除命令x 删除光标所在的字符,或者选中的字符,5+x,这就是删除5个字符,d 需要和移动命令结合在⼀起⽤,删除选中的⽂本,dd 可以把光标所在的⾏删除D,可以删除⾄⾏尾,删除命令可以结合移动命令使⽤,所以移动命令很重要,复制和粘贴的命令y 复制,copy的英⽂,yy 复制⼀⾏,可以myy复制多⾏p粘贴 paste,,5+p,就是粘贴的内容复制5次,注意1:删除命令,本质就是剪切,可以再复制回来,⽐如dd,删除⼀⾏,p,就复制回来了,注意2:如果在其他软件复制的内容,你在命令模式p粘贴是不⾏的,要i,进⼊编辑模式,点击右键粘贴就对了,按esc就可以返回命令格式了,替换命令如果修改⼀个单词,就可以使⽤替换命令,⽐较快,否则就是i进⼊编辑模式,然后修改,然后esc,才可以,r,替换当前字符,输⼊r,然后输⼊H,这样就会把当前字符替换成⼤H了,如果是使⽤编辑模式呢,要输⼊i,然后删除,然后⼤写输⼊,然后esc退出编辑模式,R,替换当前⾏光标后的所有内容,缩排和重复执⾏命令缩排就是缩进,空格越少级别越⾼,>> 这是向右缩进<< 这是向左移动代码. 重复上次的操作,###############################################查找/str 查找strn查找下⼀个N查找上⼀个* 单词快速匹配,这是向上寻找,# 单词快速匹配,这是向下寻找,####################################################查找和替换::%s///g,这就是替换的格式,全局替换:%s/旧⽂本/新⽂本/g,,这是全局替换,:%s/hello/world/g可视区域替换可视区域范围内的替换,这样可以控制开发的风险,先选中,然后:s/旧⽂本/新⽂本/g,只是没有百分号,这就是可视区域替换确认替换,这是推荐使⽤的⽅式,:%s///gc,confirm确认的意思,(y/n/a/q/l/^E/^Y)?yes,no,all替换所有,q退出,只需要记住前四个⽽且这个是每⼀个替换都要确认,###############################################进⼊编辑命令的⽅式:I,⼤写的i,可以在⾏⾸插⼊,A,这个是在⾏尾进⼊编辑模式,这个⽤的多,i,当前字符前⾯添加⽂本,a,当前字符后添加⽂本,这个⽤的少,o⼩写,在光标上⽅插⼊⼀个空⾏,O,O⼤写,在光标下⽅插⼊⼀个空⾏,编辑和数字是可以连起来⽤的,1,输⼊10,表⽰重复10次2,输⼊i进⼊编辑模式3,输⼊*,也就是重复的⽂字,4,按下esc,返回命令模式,返回之后,vi就会把2,3两步重复10次,所以在编辑之前不要随便输⼊数字,会重复的,利⽤可视块,对多⾏代码添加注释,1,移动到需要增加注释的第⼀⾏代码,按^来到⾏⾸2,ctrl+v,进⼊可视块模式3,输⼊⼤I进⼊编辑模式,并在⾏⾸插⼊,4,输⼊#,也就是注释5,按下esc回到命令模式,返回之后会在选中的每⼀⾏添加#号了,######################################分屏命令:末⾏命令拓展,e.,在末⾏模式,输⼊e,会打开内置的⽂件浏览器,浏览当前⽬录下的⽂件,edit找到⽂件,然后回车,就到了另⼀个⽂件了,注意,这个时候⼀定⽂件要保存,在末⾏模式,e ⽂件名,直接到了另⼀个⽂件,不知道⽂件名,就是e. 点,这样可以不⽤退出vi,就可以继续编辑另⼀个⽂件了,:n ⽂件名,这是新建⼀个⽂件,:w ⽂件名,这是把当前编辑的⽂件全部写⼊⼀个⽂件,当前编辑的⽂件不会切换,w,为什么要这么设计?可以阶段性的备份代码,分屏命令练习sp ⽂件名,横向增加分屏:vsp ⽂件名,纵向分屏ctrl+w,这是快捷键r,互换窗⼝c 关闭窗⼝,###把⼀个⽂件清空的办法:使⽤ echo 命令清空⽂件在这⾥,你可以使⽤ echo命令将空字符串的内容重定向到⽂件中,具体如下:# echo "" > access.log或者# echo > access.log############################################ ###########################################。

Linux操作系统Vi 文本编辑器实验报告

Linux操作系统Vi 文本编辑器实验报告

Vi 文本编辑器1.实验目的1.了解vi文本编辑器的原理和操作。

2.了解vi文本编辑器的相关命令。

2.实验原理和实验设备1.Linux操作系统3.实验步骤1.什么是vi文本编辑器?Vi是一个全屏幕文本编辑器优点:1.具有文本编辑所需的所有功能2.适用于各种版本的Unix/Linux3.适用于各种类型的终端4.使用灵活快捷缺点:1.界面不太好看2.按键命令太多2. 如何调用vi在系统提示符后输入vi和想要编辑(或建立)的文件名(如:vi [path]filename),便可进入vi。

如果只输入vi,而不带有文件名,也可以进入vi。

然后先创建文件的内容,在退出vi时,只需在退出命令后输入文件名即可。

进入vi之后,首先进入的就是编辑模式,进入编辑模式后vi等待编辑命令输入而不是文本输入,也就是说,这时输入的字母都将作为编辑命令来解释。

进入编辑模式后光标停在屏幕的第一行首位上(用_表示),其余各行的行首均有一个“~”符号,表示该行为空行。

最后一行是状态行,显示出当前正在编辑的文件名及其状态。

如果是[New File],则表示该文件是一个新建的文件。

如果输入vi带有文件名后,文件已在系统中存在的话,则在屏幕上显示出该文件的内容,并且光标停在第一行的首位,在状态行显示出该文件的文件名,行数和字符数。

在编辑模式下输入插入命令i、附加命令a、打开命令o、修改命令c、取代命令r或替换命令s都可以进入插入模式。

在插入模式下,用户输入的任何字符都被vi当作文件内容保存起来,并将其显示在屏幕上。

在文本输入过程中,若想回到命令模式,按ESC键即可。

在编辑模式下,用户按“:”键即可进入命令模式,此时vi会在显示窗口的最后一行(通常也是屏幕的最后一行)显示一个“:”作为命令模式的提示符,等待用户输入命令。

多数文件管理命令都是在此模式下执行的。

末行命令执行完成后,vi自动回到编辑模式。

如图 3.1所示。

若在命令模式下输入命令过程中改变了主意,可用退格键(backspace)将输入的命令全部删除之后,再按一下退格键,即可使vi回到编辑模式。

Linux实习三 VI编辑器

Linux实习三  VI编辑器

实习三VI编辑器及shell命令一.实习目的1.学习vi的配置2.学习vi的常用编辑命令3.了解shell的功能及相关配置文件,及Bash常用命令二.实习内容1.练习对vi的简单配置,通过命令及配置文件set fenc=utf-8 "设定默认解码set nocp "或者set nocompatible 用于关闭VI的兼容模式set number "显示行号set ai "或着set autoindent vim使用自动对齐,也就是把当前行的对齐格式应用到下一行set si "或者set smartindent 依据上面的对齐格式,智能的选择对齐方式set tabstop=4 "设置tab键为4个空格set sw=4 "或者set shiftwidth 设置当行之间交错时使用4个空格set ruler "设置在编辑过程中,于右下角显示光标位置的状态行set incsearch "设置增量搜索,这样的查询比较smartset showmatch "高亮显示匹配的括号set matchtime=5 "匹配括号高亮时间(单位为1/10 s)set ignorecase "在搜索时忽略大小写syntax on "高亮语法2.自己复制一个文本文件练习vi的编辑命令在文本文件中可以通过输入Vi的插入命令(i)、附加命令(a)、打开命令(o)、替换命令(s)、修改命令(c)或取代命令(r)从命令方式进入到输入方式。

对于在文本中光标的移动可以简单的通过上下左右键来进行。

或者通过:$ 将光标移至行尾;W 将光标移至下一个词的开头;E 将光标移至词尾;M 将光标移至中间行的开头等。

对于文本文件的修改,可以通过:x 删除光标所在的字符;X 删除光标前面的那个字符;dd 删除光标所在的行;D 从光标位置开始删除到行尾;u 复原命令,取消刚才的插入或删除命令;. 重复命令。

linux实验报告二-vi编辑器的使用

linux实验报告二-vi编辑器的使用

linux实验报告二-vi编辑器的使用
实验名称:vi编辑器的使用
实验目的:掌握vi编辑器的基本用法,以及文件的保存和退出。

实验环境:ubuntu 16.04
实验内容:
1.进入vi编辑器
打开终端,输入vi命令进入vi编辑器。

例如:vi text.txt (text.txt是要编辑的文件名,如果文件不存在,会自动创建
一个新文件并打开)。

2.编辑文本
vi编辑器默认进入命令行模式,只能执行命令,不能编辑文本。

需要进入编辑模式才能输入文本。

在命令行模式下,按下i或a键即可进入插入模式。

其中i表
示插入光标左边,a表示插入光标右边。

在插入模式下,可以输入文本,也可以使用退格键、删除键、方向键等。

3.保存并退出
完成文本编辑后,需要保存并退出。

首先按下ESC键回到命令行模式,然后输入:wq保存并退出。

如果只是想退出而不保存,可以输入:q!强制退出。

实验心得:
vi编辑器是一种非常强大的文本编辑器,虽然刚开始使用时有些不习惯,但是通过不断的练习和操作,会慢慢地掌握其基本用法。

同时在使用vi编辑器时,一定要特别小心,避免误操作,否则会对文件造成不可逆的损坏。

文本编辑利器Linux终端中的vi和nano命令介绍

文本编辑利器Linux终端中的vi和nano命令介绍

文本编辑利器Linux终端中的vi和nano命令介绍在Linux操作系统中,文本编辑是开发者、系统管理员和其他用户必不可少的任务之一。

为了有效地编辑文本文件,Linux提供了一些强大的文本编辑工具。

本文将介绍Linux终端中两个常用的文本编辑命令,分别是vi和nano。

I. vi命令vi是一种强大且广泛使用的文本编辑器,在几乎所有的Linux发行版中都默认安装。

1. 打开文件要使用vi编辑器,可以在终端中输入以下命令:```vi 文件名```这将打开指定文件以进行编辑。

如果文件不存在,则会创建一个新文件。

2. 基本编辑打开文件后,可以使用以下命令进行基本的编辑操作:- i:进入插入模式,在当前光标位置插入文本。

- a:进入追加模式,在当前光标位置之后插入文本。

- o:在当前行之后插入新的一行。

- dd:删除当前行。

- yy:复制当前行。

- p:粘贴已复制的内容。

3. 保存和退出在vi编辑器中,保存和退出文件需要使用以下命令:- :w:保存文件但不退出vi。

- :q:退出vi。

- :wq:保存文件并退出vi。

II. nano命令nano是另一个常用的文本编辑器,相比于vi,nano界面更加友好,更适合初学者使用。

1. 打开文件要使用nano编辑器,可以在终端中输入以下命令:```nano 文件名```这将打开指定文件以进行编辑。

如果文件不存在,则会创建一个新文件。

2. 基本编辑打开文件后,可以使用以下命令进行基本的编辑操作:- 使用键盘上的方向键移动光标。

- 在光标位置插入和编辑文本。

- 使用Ctrl + O来保存文件。

- 使用Ctrl + X来退出nano。

3. 其他功能nano还提供了其他一些有用的功能,例如:- Ctrl + K:剪切当前行。

- Ctrl + U:粘贴已剪切的内容。

- Ctrl + G:显示帮助信息。

- Ctrl + W:查找关键字。

总结:vi和nano是Linux终端中两个常用的文本编辑器命令。

实验3 使用vi编辑器

实验3 使用vi编辑器

实验三使用vi编辑器一.实验目的学习使用vi编辑器建立、编辑、显示以及加工处理文本文件。

二.实验内容1.进入和退出vi。

2.利用文本插入方式建立一个文件。

3.在新建的文本文件上移动光标。

4.对文本文件执行删除、复原、修改、替换操作。

三.实验步骤1.进入和退出vi<1>进入vi在系统提示符($)下输入命令vi和想要编辑(建立)的文件名(如example),便可进入vi。

<2>退出vi在命令方式下可有几种方法退出vi编辑器::wq 把编辑缓冲区的内容写到你编辑的文件中,退出编辑器,回到Linux shell 下。

:ZZ 仅当作过修改时才将缓冲区内容写到文件上。

:x 与:ZZ 相同。

:q! 强行退出vi。

感叹号(!)告诉vi,无条件退出,丢弃缓冲区内容。

这样,先前对该文件所做的修改或输入都被抛弃。

2.新建文件<1>在Linux提示符$之后,输入命令:vi myfile,然后按〈Enter〉键。

<2>输入插入命令i(屏幕上看不到字符i)。

<3>然后,输入以下文本行:To the only woman tht I,For mang year you have been my wife<4>发现这两行有错,进行改正:按〈Esc〉键,从插入方式回到命令方式。

按光标上移键,使光标移到第一行。

按光标左移键,使光标移到“tht”的第二个“t”处。

输入i(这是插入命令),然后输入a。

该行变成如下形式:To the only woman that I,按光标右移键,使光标移到“I”上。

我们想在“I”之后输入一个空格和单词“love”。

为此,输入附加命令“a”。

结果屏幕显示为:To the only woman that aI,这是怎麽回事儿?......原来是:我们先前使用了插入命令i,至今并未用〈Esc〉键返回命令方式。

所以,输入的所有字符都作为输入文本予以显示。

Vi编辑器的使用(linux)

Vi编辑器的使用(linux)

《操作系统(linux)》实验指导书实验一Vi编辑器的使用一、实验目的●理解Vi的三种运行模式及切换方法;●学会使用Vi的各种操作命令进行文本文件的编辑;●用Vi编写Linux下C程序,会用gcc编译。

二、实验工具一台装有Linux的机器(这里默认是Red Hat Linux 9),系统里面有gcc编译器。

三、预备知识介绍一些常见的实验命令,相关说明可以参考本实验参考资料部分。

1、进入插入模式命令i从光标所在位置前开始插入文本;命令a 在光标当前所在位置之后追加新文本;命令o将在光标所在行的下面新开一行,并将光标置于该行行首,等待输入文本;2、编辑模式下操作命令h、j、k、l 进行光标左移、下移、上移和右移一个字符的定位;命令x 删除光标处字符;命令yy 将当前行的内容复制到缓冲区中;命令p 将缓冲区中的内容写到光标所在的位置;命令zz 存盘退出;3、命令模式下操作命令:n直接跳到n所指向的行(n指行号);命令:q退出vi;四、基本实验首先用合法用户名登陆系统。

1.不保存直接退出(1)在系统提示符下,输入vi,按回车键。

(2)我们会看到vi的界面。

(3)输入:q!不保存直接退出。

2.新建文件hello.c并编辑一段文字进行保存(4)在系统提示符下输入vi hello.c,按回车键。

(5)看到vi的界面,输入i,左下角会出现“插入”。

(6)输入一段文字。

(7)按Esc键,进入命令模式。

这时“插入”就不见了。

(8)输入:wq,按回车键,保存文件。

3.对文件hello.c进行增、删、改操作(9)在系统提示符下输入vi hello.c,按回车键。

(10)看到vi的界面。

输入i,进入插入模式。

(11)输入增加的文字:“vi is very easy to user~!”。

(12)用方向键将光标移到图文字行的任意处。

(13)按Esc键,进入命令模式。

(14)输入命令dd,删除光标所在一行(若连续输入d,d是将光标所在的行及以下所有行删除)。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

3.1.2 vi的工作模式
vi是一个多模式的软件,它有三种工作模式。 在不同的工作模式下,它对输入的内容有不同 的解释。
1. 命令模式(Command mode) 在命令模式下,输入的任何字符都作为命令来 解释执行,屏幕上不显示输入内容。命令模式用于 完成各种文本修改工作。 2. 输入模式(Insert mode) 在输入模式下,输入的任何字符都将作为文件 的内容被保存,并显示在屏幕上。输入模式用于完 成文本录入工作。

ቤተ መጻሕፍቲ ባይዱ

3-1 vi编辑器的工作方式有哪些?相互之 间如何转换? 3-2 简述Linux下的复制与粘贴操作。 3-3 要将文件中的所有字符串str1全部用字 符串str2替换,应使用什么命令?若只将8-15 行中的str1替换为str2,又应使用什么命令? 3-4 如何在vi中显示文本的行号? 3-5 如何保存编辑过的文件并退出?如何 放弃对一个文件的修改并退出?如何实现另存 为?
3.1.1 vi文本编辑器介绍
4. 使用灵活快捷 广泛适应性带来的问题是繁多的命令。对于同一 项编辑操作,vi提供了许多不同的命令。vi的命令都很 简练,往往是单个字符或少数几个字符的组合。对初 学者来说,使用这些命令并不方便,甚至过于复杂。 但对于熟练的用户来说,更多的选择意味着更大的自 由,简单的命令意味着更少的击键次数。正因为如此 ,vi被看做是Linux开发人员和系统管理员的编辑利器 。初学者经过一段时间的使用,也会逐渐习惯vi的操 作方式,并形成自己特有的操作风格。
3.1.1 vi文本编辑器介绍
2. 适用于各种版本的Unix/Linux系统 vi是Unix/Linux系统的标准文本编辑器, 几乎每一台Unix/Linux系统上都会有vi,这是 其他编辑器无法相比的。 3. 适用于各种类型的终端 vi得以广泛应用的原因之一是它对终端设 备的广泛适应性。不管是只有打字机键盘加 Esc键的简单终端,还是受通信限制的远程终 端,或是配有完备的功能键和鼠标的现代化终 端,都可以很好地支持vi完成文本编辑工作。
常用命令介绍
删除文本命令
x--删除当前光标位置的字符(del) nx--删除n个字符 X--删除当前光标前的字符(backspace)nX dd--删除当前行 (ndd--删除当前行开始的n行) D--删除光标位置到行尾之间的字符(删后半行) d0--删除光标位置到行首之间的字符(删前半行) 注:删除的内容均进入剪贴板
第3章 Linux的文本 编辑工具VI
1
3.1
vi文本编辑器概述
与Unix相同,Linux本质上是一个文本驱动(text-driven) 的操作系统。 文本文件就是全部由ASCII码字符及某种语言的编码字 符构成的文件,不含有任何样式和格式信息。 文本文件可以被任何文本编辑器解释而不会出现乱码 ,还可以被所有程序操作和使用。 在Linux系统中,文本文件被广泛地用作系统配置文件 和系统工具软件的操作对象。这使得用户可以在文本 方式下完成所有的工作,如编写程序和命令脚本、读/ 写电子邮件、配置和管理系统等。而完成所有这些工 作的基本工具就是文本编辑器。因此,Linux的用户应 当熟悉至少一种文本编辑器。
常用命令介绍
文本选择
v--进入按字选择模式:上下左右移动光标进行文本 选择(可任意选择) V--进入按行选择模式:上下移动光标进行文本行的 选择(只能选择若干行)
常用命令介绍
剪切命令 d--剪切选定的内容至剪贴板 dd--剪切当前行至剪贴板 复制命令 y--复制选定的内容至剪贴板 yy--复制当前行至剪贴板 粘贴命令 p--将剪切板中的内容粘贴到下一行(或当前光标之前) P--将剪切板中的内容粘贴到上一行(或当前光标之后) 高级用法提示-使用多个剪切板的方法: 在使用剪切或复制命令前先按"<小写字母>,便可将相应的内容剪 切或复制到小写字母对应的剪贴板中,在粘贴命令前用"<小写字 母>便可将指定的剪贴板中的内容粘帖到相应的位置。如 "ad "bdd "cy "dyy "cp "bP
3.1.2 vi的工作模式
A a I i O o : / ?
图3-1 vi工作模式的转换
3.1.3 vi的启动与退出
在Shell下输入vi命令后,便进入全屏幕编辑环 境 命令格式是:vi [文件名] [+n][+/str] 保存与退出
:w--保存但不退出 :w <文件名>--另存为 :wq--保存后退出 ;q!--不保存退出 :q--未编辑,直接退出,编辑过则提示但不退出
合并行命令
J--将光标所在行的下一行合并到当前行
常用命令介绍
替换(改写)文本命令
r--用随后输入的一个字符替换当前字符 R--用随后输入的字符替换光标位置开始的若干字符 ,每输入一个字符就替换一个原有字符,直到按Esc 键。(相当于进入改写状态) s--用随后输入的一个或多字符替换当前光标位置的 一个字符,若只输入一个则与r命令相同。 S--用新输入的内容替换当前行(不管光标在行中何 处)
常用命令介绍
部分底行命令
:set ai/noai--设置/取消自动缩进
:set nu/nonu--设置/取消行号显示 :set hlsearch/nohlsearch--设置/取消高亮显示搜索
到的字符串 :n--跳转到第n行 :n1,n2con3--将第n1至n2之间的行复制到第n3行下 面。 :n1,n2mn3--将第n1至n2之间的行移动到第n3行下面 。 :n1,n2d--删除第n1至n2之间的行
常用命令介绍
查找字符串命令
/str--从光标处往后搜索字符串str ?str--从光标处往前搜索字符串str n--在执行以上查找命令的基础上继续搜索下一个str N--在执行以上查找命令的基础上反向搜索下一个str
常用命令介绍
查找替换命令 :m,ns/str1/str2/g[c]--将第m行与第n行之间 的所有str1替换成str2,如果后面是g,则自动替换 (替换前不提示),如果后面为c,则每次替换前 均要提示是否替换。例如: :4,15s/str1/str2/g--自动替换第4行到第15 行中的str1 :s/str1/str2/g--只替换当前行中的str1 :%s/str1/str2/g--替换所有行中的str1,等 价于:1,$s/str1/str2/g
3.1.2 vi的工作模式
3. 末行模式(Last line mode)--底行模式 末行模式也称为ex转义模式。在末行模式下, 光标停留在屏幕的最末行,在此接收输入的命令并 执行。末行模式用于执行一些全局性操作,如文件 操作、参数设置、查找与替换、拷贝与粘贴、执行 Shell命令等。 在文本编辑过程中,用户可以控制vi在这三种 工作模式之间进行切换,完成各种编辑工作。三种 模式之间的转换关系如图3-1所示。
常用命令介绍
文本插入命令
a--在当前光标后插入字符 A--在行尾插入 i--在当前光标前插入字符 I--在行首插入 o--在当前行的下一行插入新行 O--在当前行的上一行插入新行
常用命令介绍
移动光标命令
h j k l--左、下、上、右移动光标,相当于光标键的 作用。 b B w W e E--以单词为单位移动光标 ( )--以句为单位移动光标 { } --以段为单位移动光标 ^f ^b--前后翻页(^f--pagedown ^b--pageup) 0 $--移动光标到行首(0)或行尾($) nG--移动光标到第n行(1G--到文本首行,1G==gg) G--光标移到文本末行
3.1.1 vi文本编辑器介绍
vi是一个全屏幕文本编辑器,具有文本编辑所 需的所有功能。vi以高效和快捷著称,这是vi 能够在编辑器领域中保持几十年领先地位的原 因。以下介绍vi的几个突出特点
3.1.1 vi文本编辑器介绍
1. 编辑功能强大 vi的编辑功能十分强大,除通常的编辑功能外,vi 还支持一些高级编辑特性,如正则表达式、宏和命令 脚本。利用这些特性可以完成非常复杂的编辑任务, 实现编辑的智能化和自动化。另一方面,vi的功能又 十分专注,它只是一个编辑器,没有其他功能。Linux 系统提供了许多专门用途的工具,如排版、排序、流 过滤、E-mail、编译等软件。vi可以和这些工具软件协 同工作,从而实现几乎所有的文件加工处理任务。用 一些小而精悍、功能专一的工具结合起来完成复杂的 处理功能,这正是Unix的设计哲学。
3.1.1 vi文本编辑器介绍
Linux下的文本编辑器有ex、sed、vi和emacs等很 多种。其中,vi是最基本的文本编辑工具。 vi(visual)诞生于1978年,由柏克莱大学的Bill Joy 编写。从其诞生至今,vi始终是所有Unix/Linux 系统上必配的编辑器,甚至在DOS、Windows、 Macintosh、OS/2乃至IBM大型机S/390系统上都 能见到vi的某个版本。 目前Linux系统上流行的版本是vi增强版vim(vi improved)。vim是一个开放源代码软件,它在vi 的基础上增强了功能,也更容易使用。现在许多 Linux发行版中的vi就是vim。
相关文档
最新文档