正则表达式相关运用作业

1、取本机ip地址

    [root@ali ~]# ifconfig |egrep 'Bcast' |tr -s ' ' '\n' |head -n3 |tail -n1 |cut -d: -f2

blob.png

2、取各分区利用率的数值

    [root@ali ~]# df |egrep '^/dev/sd'

blob.png

3、统计/etc/init.d/functions 文件中每个单词出现的次数,并按频率从高到低

    [root@ali ~]# cat /etc/rc.d/init.d/functions |tr -cs '[:alpha:]' '\n' |sort |uniq -c |sort -nr

blob.png4、/etc/rc.d/init.d/functions或/etc/rc.d/init.d/functions/"  取目录名

    [root@ali ~]# echo "/etc/rc.d/init.d/functions/" |grep -o "[/]\?.*[/]"

blob.png

5、正则表达式表示身份证号

    '[0-9]{15,18}' 134.txt

6、正则表达式表示手机号

    ^[1][0-9][0-9]{9}$

7、正则表达式表示邮箱

    ^[0-9]{9}@[[:alpha:]].*[[:alpha:]]$

8、正则表达式表示QQ号

    [0-9]{9}

9、显示/proc/meminfo文件中以大小s开头的行; (要求:使用两种方式)

    [root@ali ~]# cat /proc/meminfo |grep -i '^[s]'

blob.png

    [root@ali ~]# cat /proc/meminfo |grep  '^[s|S]'

blob.png

10、显示/etc/passwd文件中不以/bin/bash结尾的行

    [root@ali ~]# cat /etc/passwd |grep -v '/bin/bash'

blob.png

11、显示用户rpc默认的shell程序

    [root@ali ~]# cat /etc/passwd |egrep '\<rpc\>' |cut -d: -f7

blob.png

12、找出/etc/passwd中的两位或三位数

    [root@ali ~]# cat /etc/passwd |grep '\<[1-9][0-9][0-9]\?\>'

blob.png

    [root@ali ~]# cat /etc/passwd |grep '\<[0-9]\{2,3\}\>'

blob.png

13、显示/etc/grub2.cfg文件中,至少以一个空白字符开头的且后面存非空白字符的行

    [root@ali ~]# grep '^[[:space:]]*[^[:space:]]' /etc/rc.d/init.d/functions

14、 找出“netstat -tan”命令的结果中以‘LISTEN’后跟任意多个空白字符结尾的行

    [root@ali ~]# netstat -tan |grep 'LISTEN[[:space:]]*$'

blob.png

15、添加用户bash、 testbash、 basher以及nologin(其shell为/sbin/nologin),而后找

  出/etc/passwd文件中用户名同shell名的行    

    [root@ali ~]# cat /etc/passwd |grep '^\(.*\).*/\1$'

    [root@ali ~]# grep '^\(.*\).*/\1$' /etc/passwd

blob.png

17、查出分区空间使用率的最大百分比值

    [root@ali ~]# df |grep '/dev/sda' |grep '\<[0-9]*%'

blob.png

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

    [root@ali ~]# getent passwd |sort -nt: -k3 |cut -d: -f1,3,7 |tail -n1

blob.png

19、查出/tmp的权限,以数字方式显示

    [root@ali ~]# stat /tmp/ |cut -d: -f2 |head -n4 |tr -d '(' |cut -d/ -f1 |tail -n1

blob.png

    [root@ali ~]# stat /tmp/ |head -n4 |tail -n1 |tr ' ' '\n' |head -n2 |tr -cd '[:digit:]'

blob.png

    [root@ali ~]# stat -c %a /tmp/

blob.png

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

    [root@ali ~]# netstat -nt |grep 'tcp' |tr -s ' ' '|' |cut -d'|' -f4 |uniq -c |sort -n

blob.png

21、 显示三个用户root、 mage、 wang的UID和默认shell

    [root@ali ~]# egrep '^\<root|mage|wang\>' /etc/passwd |cut -d: -f1,3,7

blob.png

22、找出/etc/rc.d/init.d/functions文件中行首为某单词(包括下划线)后面跟一个小括号的行

    [root@ali ~]# cat /etc/rc.d/init.d/functions |egrep '^[[:alpha:]_]+\(\)'

blob.png

23、使用egrep取出/etc/rc.d/init.d/functions中其基名

    [root@ali ~]# echo '/etc/rc.d/init.d/functions' |egrep -o '[^/]+/?$'

blob.png

24、使用egrep取出上面路径的目录名

    [root@ali ~]# echo '/etc/rc.d/init.d/functions' |egrep -o '(/.*/)'

blob.png

 25、统计以root身份登录的每个远程主机IP地址的登录次数

    [root@ali ~]# last |egrep "^root\>.*([[:digit:]]{1,3}\.){3}[[:digit:]]{1,3}" |tr -s ' ' ':' |cut -d: -f3 |sort |uniq -c

    28 10.1.250.14

    1 172.18.19.209

blob.png

 26、利用扩展正则表达式分别表示0-9、 10-99、 100-199、200-249、 250-255

    '(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])'

27、显示ifconfig命令结果中所有IPv4地址

    [root@ali ~]# ifconfig |grep -E -o  '(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]

    {2}|2[0-4][0-9]|25[0-5])'

blob.png

原创文章,作者:M20-1马星,如若转载,请注明出处:http://www.178linux.com/30236

(0)
M20-1马星M20-1马星
上一篇 2016-08-08 16:14
下一篇 2016-08-08 16:14

相关推荐

  • Linux 作业

    1.       描述计算机的组成及其功能。 答:CPU、I/O、存储器; CPU:由运算器和控制器组成;运算器主要功能是对数据进行各种运算,除了进行常规计算外还能进行逻辑运算以及数据的比较、移位等操作。控制器是整个计算机系统的控制中心,它指挥计算机各部分协调地工作,保证计算机按照预先规定的目标和步…

    Linux干货 2016-10-29
  • Linux下history命令的介绍

    Linux下history命令的介绍 一、用处 对于Linux而言,命令是人机交互的重要方式,而查看命令历史可以帮助我们了解系统的使用状态、增强安全性也可以调用历史达到快捷操作的目的。 二、命令行历史   执行过的命令会被存入缓存,当正常退出shell时,缓存中的命令会被写入文件中并保存在用户下的隐藏文件文件.bash_history中。当用户登陆…

    Linux干货 2016-07-29
  • 2016全球运维大会,优云蒋君伟演讲“CMDB+自动化的管理融合”成一大亮点

    2016全球运维大会于9月23日-24日在上海盛大开幕。作为国内运维行业的重量级大会,优云产品总监蒋君伟在自动化专场与来自全国各地的运维同行一起探讨、分享业内自动化运维的最佳实践。现场情绪热烈,气氛高涨,成为了本届全球运维大会的一大亮点。 全新梳理自动化与CMDB的融合之道 全球运维大会当天,运维自动化专场很多大牛针对自动化运维管理中的CMDB进行了激烈的讨…

    Linux资讯 2016-12-05
  • btrfs 文件系统

    简介   Btrfs((B-tree,ButterFS ,Better FS通常念成Butter FS),由Oracle于2007年宣布并进行中的COW(copy-on-write式)文件系统。继ext3/4文件系统之后linux又有了比较强大的文件系统(btrfs文件系统),btrfs文件系统不仅可以将ex…

    Linux干货 2016-02-19
  • CentOS 7源码安装httpd服务

    httpd的简介     httpd是一个开源软件,且一般用作web服务器来使用。目前最流行的web服务器软件叫做httpd,httpd还有一个俗称叫apache,Apache是一个软件基金会,httpd也是这个软件基金会的一个项目。在早期的http server就叫做apache,到了http server 2.0以…

    Linux干货 2016-08-24
  • 跟我一起学man page、history的使用,剖析FHS(文件系统目录标准)

    跟我一起学man page、history的使用,剖析FHS(文件系统目录标准) 描述 从Linux小白鼠成长为高(lao)高(hei)手(shu)的过程中,无论如何都要学会自个儿施法解决问题,法力的高深体现了解决问题的能力,这里的法力指的是在没有互联网的环境下如何使用man page或相关文档找到命令的使用方法和配置文件的修改方法。本文第一部分总结了在Li…

    Linux干货 2016-07-29