8.5文本处理工具

  1. 取本机ip地址

    利用head命令取行首两行,tail命令取行尾一行,

    ifconfig |head -2 |tail -1

    1470621084369874.png

  利用tr -s命令替换空格为“:”,并合并重复的“:”。利用cut -d:-f3命令,保留以“:”为分割符的第三部分

  ifconfig |head -2 |tail -1 |tr -s " " ":" |cut -d: -f3


  1470621622227544.png

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

  利用tr -s命令将df文件的分隔符空格替换并合并重复

   [root@localhost ~]# df |tr -s " " ":" 

  1470622440777543.png 

  利用cut -d命令选择以“:”为分隔符的第5列,利用tr-d命令删除文件中的“%”

  [root@localhost ~]# df |tr -s " " ":" |cut -d: -f5 |tr -d %


  1470622809825469.png

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

  用tr -cs命令显示文件中全部以字母组成的字符串,并换行

  ~]# cat /etc/init.d/functions | tr -cs "[:alpha:]" "\n"


  1470626429160291.png

  

  用“sort”命令对文件进行排序,“unip -c”显示每行重复数  “sort -nr”进行逆排序

  ~]# cat /etc/init.d/functions |sort |unip -c |sort -nr


  1470627014277321.png 

  

4. /etc/rc.d/init.d/functions或/etc/rc.d/init.d/functions/"  取目录名


  用正则表达式“egrep -o”命令,仅显示匹配到的自负串


  ~]# echo /etc/rc.d/init.d/functions |egrep -o "/.*/"


  1470645785872932.png


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

  新建一文件zhou 用"egrep"命令0-9开头,17位数字字符,1位数字或字母任意字符结尾的字符串


  [root@localhost ~]# cat /testdir/zhou |egrep "\<[0-9]{17}[[:alnum:]]\>"


   1470649286978603.png

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

  [root@localhost ~]# cat /testdir/zhou |egrep "\<1[0-9]{9}[[:digit:]]\>" 


  1470650447343273.png

7. 正则表达式表示邮箱

 [root@localhost ~]# egrep "^([a-zA-Z0-9_\-\.\+]+)@([a-zA-Z0-9_\-\.]+)\.([a-zA-Z]{2,5})$"

  1470651059584222.png

8. 正则表达式表示QQ号

   [root@localhost ~]# egrep "\<[1-9][0-9]{4,11}\>"

  

  这个题qq号和手机号分不开,待解决,有11位的QQ号和手机号是一样的

   

  

原创文章,作者:191095336,如若转载,请注明出处:http://www.178linux.com/30951

赞 (0)
191095336191095336
上一篇 2016-08-08 20:10
下一篇 2016-08-08 20:10

相关推荐

  • shell位置变量解析

    什么是位置变量 在脚本代码中调用通过命令行传递给脚本的参数。 有哪些位置变量 $1,$2,…: 对应第1、第2等参数,shift [n]换位置 $0:命令本身 $*:传递给脚本的所有参数,全部参数合为一个字符串 $@:传递给脚本的所有参数,每个参数为独立字符串$#:传递给脚本的参数的个数    &nbsp…

    Linux干货 2016-08-15
  • rsyslog+mysql+loganalyzer 搭建日志服务器及监控

    rsyslog 日志:历史事件; 历史事件:时间、地点、事件; syslog: klogd:kernel yslogd:system(application) 事件记录格式:日期时间 主机 进程[pid]:事件内容; C/S架构;通tcp或udp协议的服务完成日志记录的传送; rsyslog: rsyslog的特性: – 多线程; –…

    Linux干货 2017-01-10
  • RAID磁盘冗余探究

    RAID磁盘冗余探究 RAID的全称是Redundant Arrays of Inexpensive Disk,可以翻译为廉价的磁盘冗余阵列。由加利福尼亚大学伯克利分校的一位教授在1988年提出,是一种磁盘管理方式。其产生的初衷是为了降低成本,但是为了达到RAID的功能,其造价并不便宜,所以后来改为Redundant Arrays of Independen…

    2017-08-26
  • 文件查找与解压缩

    文件查找: which 查找可以执行文件,只搜索$PATH里的目录 $ which ls /bin/ls which只搜索$PATH里的目录,如果搜索当前目录的文件是没有任何结果的 $ ls -l 总用量 0 -rw-rw-r– 1 huanghao huanghao 0 3月 1 12:24 a.txt $ which a.txt wherei…

    Linux干货 2017-08-04
  • 【典韦文章】zabbix实现微信报警

    作者 典韦,追马代发 一、注册微信公众号 首先申请微信公众平台https://mp.weixin.qq.com/一个人最多申请5个公众号,所以还是可以的 申请完之后就可以根据腾讯的提示使用微信公众号了,然后用你自己的微信扫描关注微信号。 就可以看到用户数了,接下来的就要使用的用户的微信ID号了。点击用户查看用户的微信ID号。在浏览器查看用户的微信ID号。就是…

    Linux干货 2015-08-24
  • 马哥教育网络班22期-第九周课程作业

    1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现; #!/bin/bash # declare -i count=0 declare -i bash_num=0 declare -i&nbs…

    Linux干货 2016-11-21