综合案例分析(sort,cut,正则)

author author     2022-09-13     373

关键词:

1、    找出ifconfig “网卡名” 命令结果中本机IPv4地址

分析:

技术分享

解释:要取出ip地址,首先我们可以先取出ip所在的行,即取行;可以结合head和tail,后面会有

更好的方法去取行,取列当然会想到cut命令,但是此例中,我们要考虑分隔符(空格和冒号),

因此tr的引入,会使题目变得更加简单。

答:

技术分享

在这里小编仅提供一种比较好的方法。

2.查出分区空间使用率的最大百分比值

分析:

技术分享

 

 

解释;先附上一张df查看的结果,比较容易解释

技术分享

首先我们可以用df查看分区,很明显我们需要的是第5列,自然而然会考虑使用cut命令,但是第一列和第二列

中间的空格长度不一,我们利用以往的经验会使用tr这个命令,可以将空格压缩,而且还能转化为自己想要的

间隔符那么接下来就是排序了。

答:

技术分享

这样就很容易知道分区的最大利用率了。

3.查出用户UID最大值的用户名、UID及shell类型

分析:

技术分享

 

 

解释:首先取出文件/etc/passwd中含有用户名.UID.以及shell类型的列,不难记忆,分别是1,3,7这三列,

我们可以用cut命令将这三列取出,然后根据sort的功能,根据uid大小排序,这也是比较容易的。

答:

技术分享

需要区分cut和sort的分隔符,cut的是 -d -f sort的是-t -k。

4.查出/tmp的权限,以数字方式显示

分析:

技术分享

 

 

解释:说到权限,最容易想到的自然是使用ls命令,很容查看到文件的权限,当然查看到的是用字符表示的,

和题意是不符的,我们可能会想对字符做一个转化,但是以目前接触到的命令,还是无法解决,那么有没有

更简单的方法,直接截取到数字表示的权限。还记得我们如何查看atime.mtime以及ctime,使用的是

stat这个命令,使用它也可以查看到数字表示的权限哦。

技术分享

答:

技术分享

知道了stat这个命令可以查看到文件的权限,而且是用数字法表示的,剩下的只是截取的问题了,是不是值得

去学stat这个命令,在这里还有更简单的方法,stat -c %a /tmp/一条命令就可以。

5.统计当前连接本机的每个远程主机IP的连接数,并按从大到小排序

分析:

技术分享

 

 

解释:首先我们可以使用netstat命令查看远程连接的IP,由于对ip的统计,我们下一步把ip取出来,

这个操作和案例一类似,这里就不深入研究了,再接着是排序,会使用sort命令也比较容易,统计数量

当然是uniq了,这样一分析发现题目很简单呢,以后要学会分析题目,对困难逐个攻破,加油。

答:

技术分享

这样就很容易得出答案了。

第一次尝试在博客中添加思维导图,写的不好,多多见谅。

6. 找出/etc/passwd中的两位或三位数

分析:

 

 

技术分享

 

解释:首先你可以很容易表示出一位数,即[[:digit:]]或[0-9] ,那么表示2位或3位数也就很简单了,

可以在后面加上\{2,3\},指定数字重复的次数,这样可以指定为2位数和3位数,这一题需要考虑的是锚定词首和词尾,

如果不锚定,筛选的范围就会变大,4位数5位数也会被包含在内,因此需要加上\<.\>.

 答:

技术分享

7. 显示CentOS6上所有系统用户的用户名和UID

分析:

技术分享

 

 

解释:

首先利用cut命令截取/etc/passwd的第一列和第三列是比较容易的,接下来是从这些用户中筛选出系统用户,

而筛选系统用户的条件是UID<500,如何用正则表达式表示出小于500的数,成为这一题的难点,不过我们先前知道

表示一位可以用[0-9] 那表示一个范围呢?也就不是那么的困难了,\([0-9]{0,2}\|[1-4][0-9]{2},还有就是注意用户名可能

是个数字而且在500以内,所以就必须限定范围和位置。

答:

技术分享

表示0-499的数字还有别的方法,课余同学们可以好好探讨。

8.添加用户bash、testbash、basher、sh、nologin(其shell

为/sbin/nologin),找出/etc/passwd用户名同shell名的行。

分析:

技术分享

解释:首先是关于创建用户的,在这里我们创建用户是没有困难的,关键是如何满足后面的条件,即用户名同shell名,

前面和后面的相同我们自然会想到使用后向引用,但是用户名是未知的该如何表示,那当然使用(.*)了,但是 这里需要

限制用户名的位置,所以就会知道^\(.*\)\>,这样第一步就完成了,中间的内容我们不关心,所以可以用.*替代,接着是结尾的处理,

既然是后向引用,那么\1肯定少不了,关键是在什么位置匹配,那当然是行尾即\1$,还有一点要注意那就是只限制了\1在行尾,

还要限制\1左边的位置,即加上\/将/作为左边的分界线。

答:

技术分享

这是一题典型的后向引用的题目,要多实验,在实验中寻求更多的解决方法。

 

正则grep管道符号“|”特殊符号“||”“&&”wc命令分隔符号cut排序sort去重复uniq符号``的使用(代码片段)

grep的参数与作用 内容补充:^:瞄定行的开始,如‘^#‘匹配所有以#开头的行。$:瞄定行的结束,如‘grep$‘匹配所有以grep结尾的行。.:匹配一个非换行符的字符,如‘gr.p‘后接一个任意字符,然后是p。*:匹配零个或多个先... 查看详情

liunx中sed、grep、cut、sort、tee、diff、paste命令

...根据关键字进行行过滤1、语法:2、常见选项:3、常见的案例使用cut是列截取工具,用于列的截取1、语法2、常见选项3、常见的案例使用关于sed命令的使用,大家可以搜索网上相关文章,这里只列举了部分我工作中常用的用法。... 查看详情

javascript:综合案例-表单验证

综合案例:表单验证开发要求:  要求定义一个雇员信息的增加页面,例如页面名称为"emp_add.htmnl",而后在此页面中要提供有输入表单,此表单定义要求如下:    .雇员编号:必须是4位数字,按照正则进行验证;    .... 查看详情

shell工具cut/sed/awk/sort(代码片段)

...cut[选项参数]filename说明:默认分隔符是制表符2.sed3.awk4.sort 查看详情

文本操作3(cut,sort)(代码片段)

...l程序。因此可以使用cut命令提取shell程序的字段,在通过sort命令进行合并,然后使用uniq命令统计各个shell 查看详情

linux:cut、sort都是针对列操作,有没有对行操作的命令?

sort命令用于对文档内容进行排序处理,命令使用格式如下:sort选项文件1文件2......sort命令的常用选项包括:-t指定分割文本的分隔符-k指定按照分割后文本内容的第几列排序-r结果降序排序-n把文本转换为数值再排序使用sort命令... 查看详情

分析文本的工具练习

1、找出ifconfifig“网卡名”命令结果中本机的IPv4地址 [root@Centos8data]#ifconfig|grepinet|head-n1|tr-s‘‘|cut-d‘‘-f3  10.0.0.1002、查出分区空间使用率的最大百分比值 [root@Centos8data]#df|tr-s‘‘@|cut-d@-f5|grep-v"[[:alpha:]]"|sort-rn|head-n1... 查看详情

shell中与运算cut切分行ifwhile综合在一起的一个例子(代码片段)

 前言:公司要统计treasury库hive表磁盘空间,写了个脚本,如下: 查询hive仓库表占用hdfs文件大小:hadoopfs-du-h /user/hive/warehouse/treasury.db >treasury.txt 脚本: #!/bin/sh#whilereadlinedosize=$1num=`echo$li 查看详情

sort排序命令uniq去除排序过的文件中的重复行cut提取命令wc统计命令

sort命令对File参数指定的文件中的行排序,并将结果写到标准输出。如果File参数指定多个文件,那么sort命令将这些文件连接起来,并当作一个文件进行排序。sort语法[[email protected]~]#sort[-fbMnrtuk][fileorstdin]选项与参数:-f:忽... 查看详情

2018-4-24

8.10shell特殊符号cut命令8.11sort_wc_uniq命令8.12tee_tr_split命令8.13shell特殊符号下8.10shell特殊符号cut命令总结特殊符号\脱义字符的使用例:cut截取字符串。例:先用管道符head找出前两段,然后做一个截取。8.11sort_wc_uniq命令sort排序(通... 查看详情

爬虫——综合案例流程版(代码片段)

爬虫综合案例开发步骤:导入类库创建爬虫通用类初始化init方法类中编写重试下载模块类中编写真正下载模块类外编写保存函数类外编写获取robots.txt函数类外编写抽取网址函数类中编写网址正常化函数创建下载限流类爬虫通用... 查看详情

grep与正则表达式

一、grep简介二、基本正则表达式三、egrep扩展正则表达式四、其他文本及查看工具{wc,cut,sort,uniq,diff,patch}五、练习用例一、grep简介    文本处理工具: Linux上文本处理三剑客: grep:文本过滤工具(模式:pattern) g... 查看详情

linux小工具(grep+cut+sort+uniq+tee+diff+patch+paste+tr)(代码片段)

文章目录1.grep2.cut3.sort4.uniq5.tee6.diff1)正常显示2)上下文格式显示3)合并格式显示4)比较两个目录不同5)小技巧(patch)7.paste8.tr工具1.grepgrep是一个行过滤工具,可以根据指定的关键词进行过滤语... 查看详情

cut命令

cut是一个选取命令,就是将一段数据经过分析,取出我们想要的。一般来说,选取信息通常是针对“行”来进行分析的,并不是整篇信息分析的。(1)其语法格式为:cut [-bn][file]或cut[-c][file] 或 cut[-df][file]使用说明cut... 查看详情

如何在命令行中使用带有 cut 的正则表达式?

】如何在命令行中使用带有cut的正则表达式?【英文标题】:Howtouseregexwithcutatthecommandline?【发布时间】:2017-09-0420:37:24【问题描述】:我有一些来自ls-alth的输出:drwxr-xr-x5rootadmin170BAug32016..drwxr-xr-x5rootadmin70BAug32016..drwxr-xr-x5rootadm... 查看详情

2018-1-125周5次课

...:几个和管道有关的命令cut截取字符串,cut-c指定字符8.11sort_wc_uniq命令sort排序,sort-n数字排序sort-nr数字排序反方向wc-l统计行数wc-m统计字符数uniq去重编辑2.txt文件如下然后用uniq去重,先排序后去重加-c8.12tee_tr_split命令tee和>类... 查看详情

cut命令

1.cut命令sort可以针对行进行排序,grep可以针对行进行过滤。cut可以针对列进行操作的。2.cut命令的使用方法语法:cut[选项]文件选项:d:指定分隔符,默认空格,制表符。如:-d":"f:指定操作第几列,多列需要逗号隔开... 查看详情

shell编程字符处理命令sort和wc(代码片段)

系列文章【Shell编程】Shell中的正则表达式【Shell编程】字符截取命令cut、printf命令【Shell编程】字符截取命令awk、sed命令目录系列文章sort命令实例按照首字母做升序按照首字母做倒序把数值型数据按照字符型来对待进行排序把数... 查看详情