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
下一篇 2016-08-08

相关推荐

  • bash工作特性之命令执行状态返回值和命令行展开的讲解和实例

    命令执行状态返回值 在Linux bash中可以用命令执行状态返回值来判断命令是否运行成功,而不需去关心命令返回的结果是多少。 bash通过状态返回值来得到输出结果; 成功:返回值 0 [root@localhost tmp]# ls aaa [root@localhost tmp]# mkdir $(date +%H-%m-%S) [root@localh…

    Linux干货 2018-03-01
  • awk,systemctl,破解7root口令

    awk -F 指明输入时用到的字段分隔符 默认空格为分隔符 -v 自定义变量 基本格式:awk [options] 'program' file $1,$2..$n称为域标识,$0为所有域。 文件的每一行称为记录 awk '{print}' /etc/passwd 默认 print $0 显示全段   awk…

    Linux干货 2016-10-05
  • Linux系统发展历史

    一、什么是Linux? Linux是一种自由和开放源代码的类UNIX操作系统。该操作系统的内核由林纳斯·托瓦兹在1991年10月5日首次发布。在加上用户空间的应用程序之后,成为Linux操作系统。Linux也是自由软件和开放源代码软件发展中最著名的例子。只要遵循GNU通用公共许可证,任何个人和机构都可以自由地使用Linux的所有底层源代码,也可以自由地修改和…

    Linux干货 2016-10-14
  • 循环 函数 软件包 【中】

    循环 函数 软件包  【中】  创建无限循环 while true; do     循环体  done  until false; do     循环体  Done 特殊用法 while循环的特殊用法(遍历文件的每一行):      &nbs…

    Linux干货 2016-08-21
  • 马哥教育网络班22期+第4周课程练习 忍者乱太郎喻成

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。   cp -rp /etc/skel /home/tuser1   chmod -R 700 /home/tuser1 2、…

    Linux干货 2016-10-09
  • CentOS 6系统启动流程

    Linux系统的组成 内核+根文件系统 内核功能:     进程管理、内存管理、文件系统管理、网络管理、安全功能、驱动程序 运行中的系统环境可分为两层:内核空间、用户空间     用户空间:应用程序(进程或线程)     内核空间:内核代码…

    Linux干货 2016-09-15