• Shell脚本grep命令


    三剑客:grep  sed  awk

      grep:文本行过滤工具

      sed:  文本行编辑器(流编辑器)

      awk: 报告生成器,输出格式化

    grep包含三个命令:

      grep egrep fgrep 。他们是用来进行行模式匹配的

      egrep:=grep -E  使用扩展的正则表达式进行匹配

      fgrep =fast grep 只使用文件通配符进行匹配

      *grep默认使用正则表达式进行文本匹配

    grep的用法:

      grep [option] …PATTERN [filename]

    grep的常用选项:

    -E

    支持使用扩展正则表达式

    -P

    使用perl语言的正则表达式引擎进行搜索(每一种语言的)

    -I

    忽略大小写

    -o

    仅仅输出匹配的内容(默认输出的是行)

    -v

    进行反选

    --color=auto

    语法着色

    -n

    显示行号

    pattern--正则表达式:  

      作用:通过一些特殊字符,来表示一类字符内容,然后交给前面的命令来执行。如果使用特殊本身含义,就需要进行转义。

      1.字符匹配:

        . 任意一个字符 ?

        [] 范围内的任意一个字符

        [^]范围外的任意一个字符

        字符类:[:digit:]  [:alnum:]  [:alpha:]  [:lower:] [:upper:] [:space:] [:punct:]

      2.次数匹配

        *   匹配前面的字符0次到n次  

        ?匹配前面的字符0次到1次

        + 匹配前面的字符1次到n次

        {m}匹配前面的中字符m次

        {m,n}匹配前面的字符m到n次

        {0,n}匹配前面的字符0到n次

        {m,}  匹配前面的字符至少m次

      3.位置锚定

        ^  锚定行首

        $  锚定行尾

         锚定词首和锚定词尾

        >  锚定词尾

        < 锚定词首

      4.分组

        abc*  abccccc abc我们要看成一个整体

        ()  示例:(abc)*  abcabcabc  abcccc

        **分组特性:默认情况下,linux系统会为分组指定变量,,变量的表示形式123…………

        (((2(5[0-5]|[0-4]d))|[0-1]?d{1,2})(.((2(5[0-5]|[0-4]d))|[0-1]?d{1,2})){3})

  • 相关阅读:
    ubuntu 14.04 firefox install flash-plugin
    ubuntu node.js Binaries方式安装(二进制文件安装)
    ubuntu14.04 截图
    ubuntu 14.04下,thinkpad触摸板关闭方法
    ubuntu Mozilla Firefox install flash plugin 火狐浏览器安装flash插件
    win7+ubuntu 14.04双系统 硬盘安装
    后台启动VirtualBox虚拟机
    excel vlookup函数使用方法
    图片添加文字水印和图片水印
    记录使用Stream转多层map数据结构及遇到的坑
  • 原文地址:https://www.cnblogs.com/shy13138/p/11363812.html
Copyright © 2020-2023  润新知