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

相关推荐

  • 基于heartbeat v1+ldirectord实现LVS集群高可用

    前言 高可用集群,High Availability Cluster,简称HA Cluster,是指以减少服务中断时间为目的的服务器集群技术。通过上文可以看出,LVS集群本身并不能实现高可用,比如Director Server不能检测Real Server的健康度,一旦其中一台或全部Real Server宕机,Director Server还会继续转发请求,…

    Linux干货 2015-06-08
  • Linux简介和基础

    一、系统和硬件 无论是Linux、OS X、Windows操作系统,他们都是由以下部分组成(分层结构): 最底层:硬件 底层之上:将硬件的接口抽象成为系统调用(kernel) 再之上:库 再此之上为:应用程序 程序的运行可以有两种方式: 1、开机自动启动运行 2、用户通过交互式接口登陆或者连接系统上去,来手动运行程序 二、终端: 1、物理终端:我们可以将显示…

    Linux干货 2017-09-02
  • puppet学习笔记

      一、Puppet基础原理: Puppet是一款使用GPLV2X协议授权的开源管理配置工具,用ruby语言开发,既可以通过客户端—服务器的方式运行,也可以独立运行。puppet可以为系统管理员提供方便,快捷的系统自动化管理。   二、puppet工作流程 1. 客户端 puppet-client 向 puppet-maste…

    Linux干货 2015-11-04
  • 重构-改善既有代码的设计:编写代码22宗罪(三)

    1 Duplicated  Code重复代码        不同的地方出现相同的程序结构:         如果你在一个以上的地点看到相同的程序结构,那么可以肯定:设法将它们和而为一,程序会变得更好。最常见的“重复代码”就是一个类内的两个函数含有相同的表达式。另一种常见…

    Linux干货 2015-04-07
  • 在虚拟机上使用CentOS6的两个iso文件创建本地yum仓库和http仓库

    yum客户端和服务器端都是本虚拟机 一、创建本地磁盘访问的yum仓库 条件和要求: a.guest虚拟机需要添加2个光驱,分别装载CentOS6.4发行版的DVD1和DVD2 b.DVD1和DVD2的挂载目录分别是:/media/cdrom/下的os和extras,并设置开机挂载 c.使用CentOS-Media.repo作为yum客户端配置文件,将其他re…

    Linux干货 2015-09-22
  • 马哥教育网络班22期+第七周课程练习

    1、创建一个10G分区,并格式为ext4文件系统(1) 要求其block大小为2048, 预留空间百分比为2, 卷标为MYDATA, 默认挂载属性包含acl(2) 挂载至/data/mydata目录,要求挂载时禁止程序自动运行,且不更新文件的访问时间戳 # fdisk /dev/sdb <<EOF> n> p> 1> &g…

    Linux干货 2016-11-28