版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
项目7Linux文本处理主讲:***2024年1月2日Linux应用基础项目化教程(RHEL8.2/CentOS8.2)12024年1月2日Linux应用基础项目化教程(RHEL8.2/CentOS8.2)2本项目学习目标:1.知识目标2.能力目标掌握Linux操作系统中常用的文本处理工具;掌握VIM模式的概念,及相互间切换的操作方法;掌握常用功能的操作方法;了解Linux中其他文本处理工具。能熟练启动或关闭VIM编辑器;能熟练使用VIM编辑器进行文本的编辑;能熟练掌握VIM的常用功能,例如:复制、粘贴、查找与替换、快速定位等;能根据需求,调整VIM工具的配置。2024年1月2日Linux应用基础项目化教程(RHEL8.2/CentOS8.2)3学习任务任务7.1VIM概述
任务7.2VIM的模式任务7.3VIM常用功能2024年1月2日Linux应用基础项目化教程(RHEL8.2/CentOS8.2)4任务7.1VIM概述Vim是随Linux和UNIX系统分发的vi编辑器的升级版本,Vim有许多有用的功能,支持正则表达式的搜索,具有轻松重复命令的能力,可以直接记录和执行宏,能够自动完成文件合并、鼠标集成、拼写检查、语法高亮显示、分支撤销/重做历史等,支持流行的网络协议和文件存档格式。Vim还具有较强的可扩展性,有自己的脚本语言,称为Vim脚本(也称为VimScript或Viml)。用户可以通过多种方式使用Vim脚本来扩展Vim的功能,如为其他编程语言开启语法高亮显示、语法检查或将Vim与其他应用程序和服务集成等。除可扩展性之外,Vim还具有可配置性,各个Vim之间可共享包含Vim核心全局配置(称为vimrc)的文件。7.1.1什么是VIM2024年1月2日Linux应用基础项目化教程(RHEL8.2/CentOS8.2)57.1.2Vim的启动与退出1.启动Vim在终端窗口中,启动Vim通常可以使用两种方式。第一种方式是无参数启动,在命令行模式下输入“vim”命令启动,启动后,显示Vim窗口,第二种方式是带参数启动,通常要指定一个文件名,如“vimtest.c”,若文件存在,则会直接打开该文件,,如图7-1-2所示;若文件不存在,则会自动创建一个空文件。2024年1月2日Linux应用基础项目化教程(RHEL8.2/CentOS8.2)6在图中演示打开的“test.c”文件已经存在,该文件中的内容为一段简单的C语言代码,在窗口的右下角会显示光标所在的位置,如“4,23-30”,其中4表示第4行,23-30表示当前光标所在的行的总长度为30个字符,其中光标指向的字符f为整行的第23个字符,最右侧的“全部”表示当前窗口显示文件的内容情况,若全部文件内容超出了一个屏幕的显示范围,则此处会按百分比显示出当前窗口中的内容在全部内容中的位置。2024年1月2日Linux应用基础项目化教程(RHEL8.2/CentOS8.2)72.退出Vim完成相应的配置调整或文件编辑任务后,可以退出Vim。通常可以在命令行模式下,输入一个冒号和“wq”,即可以保存并退出Vim;也可以直接输入两个大写字母“Z”,实现保存并退出Vim。2024年1月2日Linux应用基础项目化教程(RHEL8.2/CentOS8.2)8任务7.2VIM的模式Vim启动后,通常会有几种运行模式,包括命令模式、编辑模式、末行模式和可视化模式。在不同的模式中,按下键盘上相同的按键会产生不同的效果。(1)命令模式:当Vim处于命令模式时,从键盘输入的内容会被Vim当做命令来处理,如删除、复制、粘贴等操作。(2)插入模式:又称为编辑模式,在该模式下,从键盘输入内容,会被Vim当做文件的内容写入缓存区中。7.2.1VIM的模式2024年1月2日Linux应用基础项目化教程(RHEL8.2/CentOS8.2)9(3)末行模式:又称为底行模式,在该模式下,Vim可以执行相应的保存、退出、查找、替换等操作。(4)可视化模式:在可视化模式下,用户可以使用方向键在文件中进行相应针对文本块的操作。初学者在使用Vim时,常常因不清楚Vim的模式,在使用过程混淆不同模式的操作。通常,在不带任何参数启动Vim后,Vim会直接进入命令模式。因此,建议初学者在不确定Vim当前所处的模式时,多按几次【Ese】键,确认返回到命令模式后再进行操作。2024年1月2日Linux应用基础项目化教程(RHEL8.2/CentOS8.2)107.2.2模式间的切换Vim模式之间的切换方式如图所示。2024年1月2日Linux应用基础项目化教程(RHEL8.2/CentOS8.2)111.插入模式表中列出了从命令模式切换到插入模式的命令键及其功能。正常启动Vim后,在命令模式下通过按下相应的命令键,可以进入插入模式,进行文本内容的编辑和输入。当完成内容的编辑和输入后,按【Esc】键,可以返回命令模式。命令键功
能i光标位置不变,在光标前面插入内容I将光标移动到行首,在行首开始插入内容a将光标位置向后移动一个字符,然后在光标前面插入新的内容A将光标移动到行尾,在行首开始插入新的内容o在光标所在行的后面,新增一个空白行,插入内容O在光标所在行的前面,新增一个空白行,插入内容r/R(替换操作)r:仅替换光标所在位置的内容R:从光标所在位置开始替换往后的内容。2024年1月2日Linux应用基础项目化教程(RHEL8.2/CentOS8.2)122.末行模式在命令模式下,输入“:”可以进入末行模式,执行查找、替换等操作,完成所需的操作后,按【Enter】键可直接返回到命令模式。表中给出了末行模式下的保存与退出命令,在通过Vim执行写入操作时,通常也需要注意文件权限及拥有关系的限制,若当前操作Vim的用户对指定的文件没有写入权限,则其无法执行保存操作。命
令作
用w将缓冲区中的内容写入当前的文件中,若当前编辑的内容没有指定文件名称,则会提示没有文件名称,无法保存wfilename将缓冲区中的内容写入指定的文件中q当缓冲区中的内容已经被保存时,可以直接退出Vim,若缓冲区中还有内容未处理,则会提示未保存,无法退出q!强制退出Vim,丢弃离上一次保存后当前缓冲区中的所有内容wq保存缓冲区的内容并退出wq!强制保存并退出2024年1月2日Linux应用基础项目化教程(RHEL8.2/CentOS8.2)133.可视化模式在命令模式下,输入v/V字母,或者【Ctrl+V】键,则可以进入可视化模式,按【Esc】键后可以退出该模式,返回到命令模式。2024年1月2日Linux应用基础项目化教程(RHEL8.2/CentOS8.2)14任务7.3VIM常用功能1.复制在命令模式下,使用“yy”命令可复制光标所在的行,若需要复制多行,则可以使用“nyy”命令,其中n为一个具体的数字,表示从光标开始向后复制n行,若n超出实际长度,则复制当前内容。7.3.1复制、粘贴与删除2024年1月2日Linux应用基础项目化教程(RHEL8.2/CentOS8.2)152.粘贴在命令模式下,若已经使用“yy”或“nyy”命令复制了内容,则可以使用“p”或“P”命令执行粘贴操作,“p”命令表示将内容粘贴到光标所在行的后面,“P”命令表示将内容粘贴到光标所在行的前面,若需要将复制的内容一次性粘贴多次,则可以在“p”或“P”命令前面,增加具体粘贴的次数,如“5p”,表示将缓冲区的内容粘贴到当前光标所在行后面5次。3.删除在命令模式下,使用“dd”命令可执行删除操作,若需要删除从光标处开始的n行,则在“dd”前面添加一个具体的数字。2024年1月2日Linux应用基础项目化教程(RHEL8.2/CentOS8.2)167.3.2查找和替换1.查找用户可以在末行下实现查找功能,若查找到相应的关键字,Vim会高亮显示。表中给出了在末行模式下实现查找功能的命令。命
令功能及说明/keyword使用斜线(/)加上需要查找的关键字(keyword),表示从光标所在的行开始往后搜索,若有多个关键字时,输入“n”,表示从当前的关键字向后跳转,输入“N”,表示从当前的关键字向前跳转,若在多个关键字键跳转,已经跳转到了文件的开头或末尾仍按键搜索(n/N),则表示重新从文档的开头或末尾继续搜索。?keyword使用问号(?)加上需要查找的关键字(keyword),表示从光标所在的行开始往后搜索,若有多个关键字时,输入“N”,表示从当前的关键字向后跳转,输入“n”,表示从当前的关键字向前跳转,若在多个关键字键跳转,已经跳转到了文件的开头或末尾仍按键搜索(n/N),则表示重新从文档的开头或末尾继续搜索。2024年1月2日Linux应用基础项目化教程(RHEL8.2/CentOS8.2)17在查找关键字时,若关键字为特殊字符,则需要进行转义处理,在默认情况下,Vim中的一些字符有特殊含义,如“^”表示行首,“$”表示行尾,针对这类字符,用户需做转义处理,将其转换为普通字符进行查找,转义的格式为“\需转义的特殊字符”。2024年1月2日Linux应用基础项目化教程(RHEL8.2/CentOS8.2)182.替换在命令模式下,用户可以实现替换操作。,通常,进行替换操作的匹配是以文本内容的每行为单位进行匹配处理,替换命令的语法格式如下::m,ns/keyword-1/keyword-2/[iceg]内
容说明m,nsm,n表示文件的第m行至第n行的区域,且m<n,s表示替换操作,若m是数字0,则表示从文件开头开始替换,若n为“$”,则表示一直替换到文件的最后一行。若需要表示全文,可以使用“%”代替“m,n”/keyword-1表示替换前的关键字/keyword-2表示替换后的关键字,即用keyword-2替换keyword-1icegi、c、e、g为可选项,i表示忽略替换过程中keyword-1的大小写情况,I则表示对大小写是敏感的;若在替换过程中,每行有多个匹配的关键字,使用g选项可以一并替换每行中多次出现的关键字,若没有使用g选项,则表示仅替换每行第一次出现的关键字;c表示confirm,即在每次替换前进行询问确认;e用于控制是否显示错误(error)提示2024年1月2日Linux应用基础项目化教程(RHEL8.2/CentOS8.2)197.3.3跳转与定位若用Vim打开的文件中的内容较多,行数偏大时,需要通过翻页进行操作,查找的效率较低,因此Vim提供了快速跳转和定位功能。在命令模式下,输入“gg”命令,可以快速跳转到文件开头第一行,若需要快速跳转到文件的末尾,则输入“G”命令,若需要定位到文件的某行处,可以使用“ngg”命令,n表示具体的行号。若在跳转过程中,指定的行号超出了文件的最大行号,则默认会跳转到文件的尾部。2024年1月2日Linux应用基础项目化教程(RHEL8.2/CentOS8.2)207.3.4撤销与重做在Vim中,若操作失误,则可以使用相应的撤销或重做功能快速还原。在命令模式下,使用“u”命令(表示undo)可以撤销上一次的操作。使用【Ctrl+r】键,可以实现重做功能,即恢复上一次撤销的内容。2024年1月2日Linux应用基础项目化教程(RHEL8.2/CentOS8.2)217.3.5语法高亮设置在实际的使用过程中,因个人使用习惯等因素,部分用户需要开启或关闭Vim的语法高亮显示功能,该操作可以通过编辑Vim的默认配置文件“/etc/vimrc”进行。在“syntaxon”所在行的开头加上一个双引号即可注释该行,关闭语法高亮显示功能,取消注释即可开启该功能。若需要在命令行模式下临时地关闭或开启语法高亮显示功能,则可以使用“syntaxon”或者“syntaxoff”命令,开启或关闭语法高亮显示的命令也可以缩写为“synon”和“synoff”。执行关闭语法高亮显示命令“synoff”的结果,如图所示。2024年1月2日Linux应用基础项目化教程(RHEL8.2/CentOS8.2)227.3.6光标位置显示及行号设置1.光标位置与语法高亮显示功能的设置类似,Vim默认会在编辑器窗口的右下角,开启光标位置显示功能。若需要开启或关闭该功能,则可以通过相应的命令进行临时设置。开启光标位置显示功能的命令为“setruler”,关闭光标位置显示功能的命令为“setnoruler”。2024年1月2日Linux应用基础项目化教程(RHEL8.2/CentOS8.2)232.行号用户可以在“/etc/vimrc”文件的末尾,通过增加或删除“setnumber”命令实现行号显示功能的开启或关闭。在用Vim进行编辑时,也可以在末行模式下通过输入“setnumber”,命令临时开启行号显示功能,或者输入“setnonumber”命令临时关闭行号显示功能,如图所示。2024年1月2日Linux应用基
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年度城市公共停车场建设经营合同3篇
- 2024年度事业单位员工违纪处理聘用合同参考3篇
- 2024年新股质借资合同范例
- 2024年度个人车辆购置担保贷款合同标准3篇
- 2024图书编纂印刷绿色印刷标准委托协议3篇
- 2024年度专业体育赛事视频转播服务合同3篇
- 2024年度小客车指标租赁与车辆融资租赁合同3篇
- 2024年度房地产买卖与房屋质量保修服务合同2篇
- 2024年度软件平台运营服务合同2篇
- 2024年度企业资源管理系统(ERP)实施合同8篇
- 2024年四平职业大学单招职业技能测试题库及答案解析
- 作业成本法在F公司的应用研究
- MOOC 大数据与法律检索-湖南师范大学 中国大学慕课答案
- 活动现场医疗应急方案
- 宏观经济学(山东联盟-山东财经大学)智慧树知到期末考试答案2024年
- 部编人教版二年级劳动教育上册期末试卷(带答案)
- 如何加强港口安全管理工作
- 《初中班会课件:如何正确对待网络暴力》
- 幼儿园课程组织与实施课件
- 电子教材(小学拼音)
- 泵工试题完整版本
评论
0/150
提交评论