【Linux】Shell与文本处理实训

这篇具有很好参考价值的文章主要介绍了【Linux】Shell与文本处理实训。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

实训1:vim编辑器的应用 

(1)在当前目录中,通过vi(m)命令新建wol文件。

(2)进入vi编辑器后,通过按字母i进入insert模式。输人一行文字“I am a student!"。

(3)按ESC.退回命令模式,输人“: wq",保存退出。

(4)拷贝/etc/man.config文件到当前目录。

(5)用vi打开它,请问现在是在什么模式?

(6)将光标移动到行尾,再将光标移动到行首。

(7)将光标移动到21行,删除5行。

(8)撤销刚才的操作。

(9)将光标移动到11行,复制10行。

(10)将复制的内容粘贴到文章末尾。

(11)在vi中设定行号,移动到第58行。

(12)移动到第一行,并且向下查找bzip2这个字符串,请问它在第几行?

(13)移动到第5行将man字符串(全部)改为大写MAN字符串?

(14)修改完之后,突然反悔了,要全部复原。

(15)将这个文件另存成一个man. test. config的文件。

(16)保存退出。

(17)使用vi新建文档Hello. java。

(18)进人编辑模式输人源代码。

(19) 保存退出。

实训2:重定向、管道

(1) 用ls命令显示当前目录的文件列表。

(2)使用输出重定向,把ll命令在终端上显示的当前目录中的文件列表重定向到list中去。

(3)查看文件list中的内容,往意在列表中会多出一个文件list,其长度为0,这说明Shell是首先创建了个空文件,然后再运行Is 命令。

(4)再次使用输出重定向,把1s命令在终端上显示的当前目录中的文件列表重定向到文件list中去。这次使用管道符号>>进行重定向。

(5)查看文件list的内容,注意其中两行list文件的信息中文件大小的区别。

(6)使用echo命令,在屏幕上显示内容为“happy”的字符串:

(7)使用echo命令,将“happy”的字符串写人network文件中。

(8)将1s/etc/xl命令执行错误重定向到home目录下的cw文件中。

(9)使用cat命令将list文件和network文件合并成一个文件list_network

(10)使用tr命令将network文件中的h字母转化成大写的H字母。

(11)使用tr命令將network文件中的h字母转化成大写的H字母,并写人networkl文件中去。

(12)练习使用"cat>network2<< !".

(13)利用管道和grep命令,在上面建立的文件list中查找字符中list.

(14)利用管道和wc命令,计算文件list中的行数、单词数和字符数。

(15)将/et/passwd 文件内容重定向到/home目录下的pd文件中。

实训3: grep及正则表达式

(1)将/etc/passwd 中有出现root 的行取出来,并以高亮显示。

(2)将/ete/ passwd中有出现root的行取出来,同时显示这些行在etc/ passwd的行号。

(3)将/etc/ passwd中没有出现root的行取出来。

(4)将/etc/passwd 中没有出现root和nologin的行取出来。

(5)将/etc/passwd 中出现“root" 或"mail"的行。

实训4:正则表达式

(1)匹配行首。

①查看以字符“a”开头的行。

②查看以字符串“abc"开头的行。

(2) $匹配行尾。

①查看以字符串“33”结尾的行。

②查看以字符“3”结尾的行。

(3) []:匹配[]内的字符或者关系。

①查看包含字符“1” 或者包含字符“2”包含字符“3”的行。

②查看包含字符test或taste的行。

(4).:匹配任意的单字符。

①查找任意字符开头,然后第二个字符为3。

②查找任意两个字符开头,然后第三个字符为3。

(5)¥:紧跟一个单字符,表示匹配0个或者多个此字符。

①匹配字符“3”0次或者多次。

②匹配字符串“23",但是3被匹配的次数≥0。

(6) \ :用来屏蔽元字符的特殊含义。

①在字符串“365.398”中,查找“.”这个字符,而不是任意单字符。

(7)搜索到有oo的行,但不想要oo前面有g.

(8)搜寻包含特定字符串“the" 的行。

(9)反向搜寻特定字符串"the"(即不包含“the")。

(10)取得任意大小写"the"的这个字符串。

(11)搜索有oo的字符时,则可以使用。

(12)搜索oo时不想搜到oo前面有g的话,可以利用反向选择[^]来达成,

(13)搜索oo前面不想有小写字符。

(14)显示行首为"the"的字符串。

(15)显示行首是小写字符。

(16)显示行尾为点的那行

(17)显示5~9行数据。

(18)显示空白行。

(19)找出g?? d字符串,起头g结束d的四个字符串。

(20)o*代表空字符(就是有没有字符都可以)或者一个到N个o字符,所以grep-n ‘o*’regular _ express. txt就会把所有行全部打印出来,

(21) oo*代表o+空字符或者一个到N个o字符,所以grep 一n 'oo*'regular _express. txt就会把o, 00,000 等的行全部打印出来。

(22)“goo*g"代表gog, goog. gooog等。

(23)找出含g...g字符串的行。

(24)找出含有数字的行。

(25)找出含两个o的字符串。

(26)找出g后含2~5个o然后以g结尾的字符串。

(27)找出g后含2以上的o然后以g结尾的字符串。


实训1:vim编辑器的应用 

(1)在当前目录中,通过vi(m)命令新建wol文件。

【Linux】Shell与文本处理实训

(2)进入vi编辑器后,通过按字母i进入insert模式。输人一行文字“I am a student!"。

【Linux】Shell与文本处理实训

(3)按ESC.退回命令模式,输人“: wq",保存退出。

【Linux】Shell与文本处理实训

(4)拷贝/etc/man.config文件到当前目录。

【Linux】Shell与文本处理实训

(5)用vi打开它,请问现在是在什么模式?

当前是命令模式

【Linux】Shell与文本处理实训

【Linux】Shell与文本处理实训

(6)将光标移动到行尾,再将光标移动到行首。

按“$”移动至行尾,按“0”或者“^”跳转至行首

【Linux】Shell与文本处理实训【Linux】Shell与文本处理实训

(7)将光标移动到21行,删除5行。

按下“21G”即可跳转到第二十一行,再用“5dd”删除5行

【Linux】Shell与文本处理实训【Linux】Shell与文本处理实训

(8)撤销刚才的操作。

在命令模式下按下“u”即可撤销上一步的操作

【Linux】Shell与文本处理实训

(9)将光标移动到11行,复制10行。

【Linux】Shell与文本处理实训按下“11G”跳转到第11行,再用“10yy”复制10行

(10)将复制的内容粘贴到文章末尾。

按下“G”将光标移动至文件末尾行首,按下“$”跳转到行尾,再用“p”粘贴至文章末尾

【Linux】Shell与文本处理实训

【Linux】Shell与文本处理实训

【Linux】Shell与文本处理实训

(11)在vi中设定行号,移动到第58行。

由于上面方便查看行数已经设定过行号了,命令为“:set number”(在命令模式下启动末行模式,设置set number)

此处我先退出vim编辑器,重新进入后用“:set number(或:set nu)”设置行号(或用“:set nonumber”取消行号,再重新进行设置)。再用“58G”移动到第58行

【Linux】Shell与文本处理实训

(12)移动到第一行,并且向下查找bzip2这个字符串,请问它在第几行?

按下“gg”或者“1G”即可将光标移动到第1行,用“/bzip2”向下查找,结果显示该字符串在第13行

【Linux】Shell与文本处理实训

【Linux】Shell与文本处理实训

(13)移动到第5行将man字符串(全部)改为大写MAN字符串?

按下“5G”跳转到第五行,输入“:s/man/MAN/g”即可将该行全部的“man”修改成“MAN”

【Linux】Shell与文本处理实训

【Linux】Shell与文本处理实训

(14)修改完之后,突然反悔了,要全部复原。

强制退出“:q!”,不保存修改的内容。即恢复到最初状态,完成全部复原。

【Linux】Shell与文本处理实训

(15)将这个文件另存成一个man. test. config的文件。

利用“:w filename”命令进行实现,即为“:w man.test.config”

【Linux】Shell与文本处理实训【Linux】Shell与文本处理实训

(16)保存退出。

【Linux】Shell与文本处理实训【Linux】Shell与文本处理实训

(17)使用vi新建文档Hello. java。

【Linux】Shell与文本处理实训【Linux】Shell与文本处理实训

(18)进人编辑模式输人源代码。

public class hello

public static void main (Srting [] args)

System. out. println (“Hello world!");

按下“a”(或者“i”、“o”)即可从命令模式进入输入模式并且输入代码

【Linux】Shell与文本处理实训

(19) 保存退出。

当前在输入模式中,按下“Esc”键退回到命令模式下,再按“:wq”则进入末行模式且保存退出

【Linux】Shell与文本处理实训

【Linux】Shell与文本处理实训

实训2:重定向、管道

(1) 用ls命令显示当前目录的文件列表。

【Linux】Shell与文本处理实训

(2)使用输出重定向,把ll命令在终端上显示的当前目录中的文件列表重定向到list中去。

【Linux】Shell与文本处理实训【Linux】Shell与文本处理实训

(3)查看文件list中的内容,往意在列表中会多出一个文件list,其长度为0,这说明Shell是首先创建了个空文件,然后再运行Is 命令。

【Linux】Shell与文本处理实训【Linux】Shell与文本处理实训

(4)再次使用输出重定向,把1s命令在终端上显示的当前目录中的文件列表重定向到文件list中去。这次使用管道符号>>进行重定向。

【Linux】Shell与文本处理实训

(5)查看文件list的内容,注意其中两行list文件的信息中文件大小的区别。

【Linux】Shell与文本处理实训

(6)使用echo命令,在屏幕上显示内容为“happy”的字符串:

【Linux】Shell与文本处理实训

(7)使用echo命令,将“happy”的字符串写人network文件中。

【Linux】Shell与文本处理实训

(8)将1s/etc/xl命令执行错误重定向到home目录下的cw文件中。

【Linux】Shell与文本处理实训

(9)使用cat命令将list文件和network文件合并成一个文件list_network

【Linux】Shell与文本处理实训

(10)使用tr命令将network文件中的h字母转化成大写的H字母。

【Linux】Shell与文本处理实训

(11)使用tr命令將network文件中的h字母转化成大写的H字母,并写人networkl文件中去。

【Linux】Shell与文本处理实训

(12)练习使用"cat>network2<< !".

【Linux】Shell与文本处理实训

(13)利用管道和grep命令,在上面建立的文件list中查找字符中list.

【Linux】Shell与文本处理实训

(14)利用管道和wc命令,计算文件list中的行数、单词数和字符数。

【Linux】Shell与文本处理实训

(15)将/et/passwd 文件内容重定向到/home目录下的pd文件中。

【Linux】Shell与文本处理实训

实训3: grep及正则表达式

(1)将/etc/passwd 中有出现root 的行取出来,并以高亮显示。

【Linux】Shell与文本处理实训

(2)将/ete/ passwd中有出现root的行取出来,同时显示这些行在etc/ passwd的行号。

【Linux】Shell与文本处理实训

(3)将/etc/ passwd中没有出现root的行取出来。

【Linux】Shell与文本处理实训

(4)将/etc/passwd 中没有出现root和nologin的行取出来。

【Linux】Shell与文本处理实训

(5)将/etc/passwd 中出现“root" 或"mail"的行。

【Linux】Shell与文本处理实训

实训4:正则表达式

(1)匹配行首。

①查看以字符“a”开头的行。

【Linux】Shell与文本处理实训

②查看以字符串“abc"开头的行。

【Linux】Shell与文本处理实训

(2) $匹配行尾。

注:这个题目应该给错了,应该是匹配行尾而非开头

【Linux】Shell与文本处理实训

【Linux】Shell与文本处理实训

①查看以字符串“33”结尾的行。

【Linux】Shell与文本处理实训

②查看以字符“3”结尾的行。

【Linux】Shell与文本处理实训

(3) []:匹配[]内的字符或者关系。

①查看包含字符“1” 或者包含字符“2”包含字符“3”的行。

【Linux】Shell与文本处理实训

②查看包含字符test或taste的行。

【Linux】Shell与文本处理实训

(4).:匹配任意的单字符。

①查找任意字符开头,然后第二个字符为3。

【Linux】Shell与文本处理实训

②查找任意两个字符开头,然后第三个字符为3。

【Linux】Shell与文本处理实训

(5)*:紧跟一个单字符,表示匹配0个或者多个此字符。

①匹配字符“3”0次或者多次。

【Linux】Shell与文本处理实训

②匹配字符串“23",但是3被匹配的次数≥0。

【Linux】Shell与文本处理实训

(6) \ :用来屏蔽元字符的特殊含义。

①在字符串“365.398”中,查找“.”这个字符,而不是任意单字符。

【Linux】Shell与文本处理实训

(7)搜索到有oo的行,但不想要oo前面有g.

【Linux】Shell与文本处理实训

(8)搜寻包含特定字符串“the" 的行。

【Linux】Shell与文本处理实训

(9)反向搜寻特定字符串"the"(即不包含“the")。

【Linux】Shell与文本处理实训

(10)取得任意大小写"the"的这个字符串。

【Linux】Shell与文本处理实训

(11)搜索有oo的字符时,则可以使用。

【Linux】Shell与文本处理实训

(12)搜索oo时不想搜到oo前面有g的话,可以利用反向选择[^]来达成,

【Linux】Shell与文本处理实训

(13)搜索oo前面不想有小写字符。

【Linux】Shell与文本处理实训

(14)显示行首为"the"的字符串。

【Linux】Shell与文本处理实训

(15)显示行首是小写字符。

【Linux】Shell与文本处理实训

(16)显示行尾为点的那行

【Linux】Shell与文本处理实训

(17)显示5~9行数据。

【Linux】Shell与文本处理实训

(18)显示空白行。

【Linux】Shell与文本处理实训

(19)找出g?? d字符串,起头g结束d的四个字符串。

【Linux】Shell与文本处理实训

(20)o*代表空字符(就是有没有字符都可以)或者一个到N个o字符,所以grep-n ‘o*’regular _ express. txt就会把所有行全部打印出来,

【Linux】Shell与文本处理实训

(21) oo*代表o+空字符或者一个到N个o字符,所以grep 一n 'oo*'regular _express. txt就会把o, 00,000 等的行全部打印出来。

【Linux】Shell与文本处理实训

(22)“goo*g"代表gog, goog. gooog等。

【Linux】Shell与文本处理实训

(23)找出含g...g字符串的行。

【Linux】Shell与文本处理实训

(24)找出含有数字的行。

【Linux】Shell与文本处理实训

(25)找出含两个o的字符串。

【Linux】Shell与文本处理实训

(26)找出g后含2~5个o然后以g结尾的字符串。

【Linux】Shell与文本处理实训

(27)找出g后含2以上的o然后以g结尾的字符串。

【Linux】Shell与文本处理实训文章来源地址https://www.toymoban.com/news/detail-403241.html

到了这里,关于【Linux】Shell与文本处理实训的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Shell脚本文本三剑客之sed编辑器(拥明月入怀,揽星河入梦)

    sed编辑器可以根据命令来处理数据流中的数据,通过多种转换修改流经它的文本,这些命令要么从命令行中输入,要么存储在一个命令文本文件中。 sed是一个面向字符流的非交互式编辑器,也就是说 sed 不允许用户与它进行交互操作。 1.读取 sed从输入流(文件、管道、标准输

    2024年02月08日
    浏览(43)
  • Linux文本编辑器-vim

    目录 前言 Vim三种模式 打开方式 命令模式 插入模式 可视模式 保存和退出 Vim是一个功能丰富且强大的文本编辑器,被广泛用于Linux系统。它是Vi的增强版本,提供了更多的功能和改进,同时可以通过插件扩展其功能; 「命令模式」:可以进行删除、复制、粘贴等快捷操作。

    2024年02月15日
    浏览(63)
  • 【Linux】shell编程—awk编辑器

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 AWK是一种优良的文本处理工具。它不仅是 Linux 中也是任何环境中现有的功能最强大的数据处理引擎之一。这种编程及数据操作语言的最大功能取决于一个人所拥有的知识 可以进行样式装入、流控制、数

    2024年02月06日
    浏览(55)
  • Linux 命令nano(文本编辑器)

    下面是一些Nano编辑器的详细命令和操作: 要启动Nano编辑器并打开一个文件进行编辑,可以使用以下命令: 如果指定的文件不存在,Nano会创建一个新文件并使用给定的文件名。 在Nano编辑器中保存文件非常简单。 如果在编辑过程中对文件进行了修改,Nano会提示您是否保存修改

    2024年04月11日
    浏览(47)
  • Linux文本之sed流编辑器

    目录 一、sed的相关知识及其工作流程 1)sed编辑器的介绍 2)sed 流编辑器的工作过程 3)怎么解决sed命令处理容量过大,或则内容过多的而导致执行效率慢的问题? 解决方案一(推荐用法): 解决方案二: 二、sed命令格式与选项操作符 1)sed命令格式  基本操作格式:  2)

    2024年02月04日
    浏览(37)
  • Linux--了解Linux中的各种文本编辑器

    目录 一、文本编辑器 1、简介: 2、编辑器的功能: 3、适用于Linux的编辑器 3.1、vim编辑器的三种工作模式 3.2、vi编辑器中的相关指令 3.3、vi中的光标移动命令 3.4、vi高级读取和保存命令 3.5、vi插入和替换命令 3.6、vi编辑器中删除和修改命令: 3.7、vi编辑器中的复制命令 3.8、

    2024年02月08日
    浏览(55)
  • Linux和Shell笔记-6使用编辑器Vim

    对文本在编辑器的功能(如查找,剪切和粘贴)了解越多,编写shell脚本的速度就越快。以VIM为例 安装vim vim基础 键入vim(或vi,如果这个别名或链接文件存在的话)如 vim有两种操作模式,普通模式和插入模式 普通模式将按键解释成命令 插入模式将光标位置输入的每个键插入

    2024年02月16日
    浏览(40)
  • Linux:Vim文本编辑器及其应用详解

    众多 Linux 发行版系统,通常都已经默认安装好了 vi 或 Vim 文本编辑器,Centos 也不例外,该系统就默认安装有 vi 文本编辑器,但建议大家使用 Vim。 如果在命令行模式下输入“vim”,输出结果为“Command not found”,则表示此系统中未安装 Vim。 CentOS 系统中,使用如下命令即可安

    2024年02月12日
    浏览(74)
  • Linux基础工具|文本编辑器Vim的使用

    您好这里是limou3434的个人博客,感兴趣可以看看我的其他内容。 本次我给您带来的是Linux下Vim文本编辑器的使用,关于vim,您只需要知道一些常用的指令和操作即可,快速上手的秘诀是实践,并且是多次实践。 安装:在centos环境下安装vim可以使用“sudo yum install vim”,其他环

    2024年02月11日
    浏览(50)
  • Linux Vim文本编辑器-Vim常用命令

    距离上次Linux的学习,今天又是一个崭新的起点,我们用五天的时间学了一些Linux一些常用的操作命令,但掌握这些还是远远不够的,这个世界就是这样,将生于此,既是幸运也是不幸,只有不断地学习才能有自己的一席之地,话不多说,开始我们今天的Linux学习之旅。 目录

    2024年02月06日
    浏览(64)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包