正则表达式之初体验

学习正则表达式之前,看过这复杂的表达式,犹如天书,无比高大上;怀着战战兢兢的心情,开始了学习之旅:

一、  正则表达式Global search REgular expression and Print out the line.


我的理解是:通过一大堆符号组成的公式逐行查找文本中匹配的字符串并显示出来 

分类

            egrep打开对元字符扩展集的支持,实现与 grep -E相同的功能。 

             fgrep:与grep相似,占用空间比egrep小,速度比grep快,但不识别正则表达式。

注意:

1、 只能查找文本

2、 逐行查找

二、 语法格式


grep [option]… 'PATTERN' FILE..

–color=auto   语法着色,显示匹配的字符

        命令选项:

            -v: 反向选取

            -o: 仅显示匹配的字串,而非字串所在的行

            -i: ignore-case,忽略字符大小写

            -E: 支持使用扩展正则表达式

            -A #  显示匹配行以及以下#

            -B #  显示匹配行以及以上#

               -C #  显示匹配行以及上下#

三、 元字符metacharacter


这类的常用字符有:

blob.png

blob.png

blob.pngblob.png

     举例说明:

     1、找出/etc/passwd文件中的一位数或两位数

     blob.png

 blob.png

2、列出当前系统上其用户名和默认shell相同的用户

/etc/passwd  下的用户格式:

blob.png

如上所示,左右字符都一样的予以显示,因此,可以使用分组以及引用功能。

blob.png

3、使用echo命令输出一个路径,而后使用grep取出其基名

blob.png

4、找出ifconfig命令结果中的1-255之间的数字

blob.png

以上是一些学习小结,后续学习中还会进一步加深

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

(0)
麦鲸麦鲸
上一篇 2015-03-30
下一篇 2015-04-01

相关推荐

  • Linux网络

    网络概念 OSI模型网络设备TCP/IPIP地址   什么是网络 资源共享的功能和优点数据和应用程序资源网络存储备份设备 常见的网络物理组件 网络应用程序Web 浏览器(Chrome、IE、Firefox等)即时消息(QQ、微信、钉钉等)电子邮件(Outlook、foxmail 等)协作(视频会议、VNC、Netmeeting、WebEx 等)we…

    Linux干货 2017-08-19
  • 关于绑定与不绑定CPU的对比

        此文严格意义上说,我没有很大的把握,其中关于CPU调度域的概念现在还有些混淆,但还是发出来,希望能做点铺路的贡献吧。    另外CPU调度域的原理我没办法自己写,能力尚浅, 只能将IBM知识库 和 另一位博主的文章摘录如下,并添加了些帮助理解的图片,希望能帮助到初学者。 …

    Linux干货 2016-05-03
  • 马哥教育网络班21期+第5周作业

    1、显示/boot/grub/grub.conf中以至少一个空白字符开头的行(以/boot/grub2/grub.cfg代替); [root@localhost ~]# grep '^[[:space:]]\+' /boot/grub2/grub.cfg    load_e…

    Linux干货 2016-08-08
  • 根分区伸缩实验

    众所周知LVM是Linux环境下对 磁盘进行管理的一种机制。用户在安装Linux操作系统时,难以分配合适的硬盘空间,当一个分区存放不下某个文件时,这个文件因为文件系统的限制,也不能 跨越多个分区来存放。而遇到出现某个分区耗尽时,只有使用调整分区大小的工具。随着LVM功能的出现,这些问题都迎刃而解,用户在无需停机的情况下可以方 便…

    Linux干货 2015-05-27
  • 重定向及tr命令详解及其在管道中的使用简述

    一、标准输入和输出及其重定向         1.标准输入指的是来自键盘的输入,通常用0来表示;标注输出是默认输出到当前终端窗口,用1来表示;标准错误输出同样默认输出到当前终端窗口,用2来表示。除标准输出之外,我们还可以通过重定向来更改默认的输入和输出方式。   &nb…

    Linux干货 2016-08-11
  • Linux-Centos7编译内核

    编译内核     前提:         (1)准备好开发环境         (2) 获取目标主机上硬件设备的相关信息         (3) 获取目标主机系统功能的相关信息       …

    2017-07-16