正则表达式之初体验

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

一、  正则表达式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 23:43
下一篇 2015-04-01 13:24

相关推荐

  • 马哥教育网络班20期+第九周博客作业

    1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现; #!/bin/bash export nolginbash export otherbash for i in `grep -o…

    Linux干货 2016-08-09
  • python之psutil模块

    python 安装psutil 来实现获取系统信息  # yum -y install python*pip # yum -y groupinstall “Development Tools # yum -y install python34-devel.x86_64 # pip3 install –upgrade pip # pip3 inst…

    Linux干货 2014-01-22
  • 用户管理和组管理

         Linux是一个多用户多任务的系统 ,因此学习用户管理和组管理,对我们工作和学习有很大的帮助。用户是你登录这个操作系统的凭证,因此用户的创建和修改,删除是用户管理的基本工作,所以你掌握这些,对你的工作有很好的帮助。 用户账号管理 /etc/passwd username:x: UId:gid:comment:…

    Linux干货 2016-08-10
  • CentOS 7 tomcat 7.0.54 的功能实现及详解

    一、 jdk 安装配置 # yum install java-1.8.0-openjdk-devel (依赖的java-1.8.0-openjdk,java-1.8.0-openjdk,headless也会被安装 ) # alternatives -h # vim /e…

    Linux干货 2014-06-09
  • centos 7 之nmcli命令

    1、nmcli命令的作用 nmcli : command‐line tool for controlling NetworkManager     NetworkManager:动态管理和监控网络设置的守护进程。用户和脚本都可使用命令行工具 nmcl…

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

    CentOS 5和6的启动流程服务管理Grub管理自制Linux启动排错编译安装内核 系统启动流程:  POST –> 读取BootSequence (BIOS),决定引导次序 –>读取引导设备的Bootloader(MBR grubstage1–>stage1.5/boot…

    Linux干货 2016-09-13