zoukankan      html  css  js  c++  java
  • shell_Day04

    grep程序

      Linux下有文本处理三剑客 -- grep sed awk
      grep:文本 行过滤工具
      sed: 文本 行编辑器(流编辑器)
      awk:报告生成器(做文本输出格式化)

    grep

      包含三个命令:grep egrep fgrep ,它们是用来进行 行模式(pattern)匹配的
      egrep = gerp -E //使用扩展的正则表达式进行匹配
      fgrep = fast grep  //只使用文件通配符进行匹配
      *grep默认使用正则表达式进行文本匹配*
      

    grep的用法:

      grep [option] ... PATTERN [filename]
      grep的常见选项 -- option
        -E  支持使用扩展的正则表达式(ERE)(regexp)
        -P  使用perl语言的正则表达式引擎进行搜索(每一种语言的正则表示式引擎都不相同,甚至sed grep awk使用的regexp引擎也不相同)
        -i   忽略大小
        -v  进行反选
        -o  仅仅输出匹配的内容(默认输出的是匹配到的行)
        --color=auto  语法着色
        -n  显示行号
        -w  匹配固定的单词
      

    PATTERN--正则表达式

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

    字符匹配

      .  任意一个字符  ?
      [ ]  范围内的任意一个字符
      [^ ]  范围外任意一个字符
      字符类:[:digit:] [:alnum:] [:alpha:] [:lower:] [:upper:] [:space:] [:punct:]

    次数匹配

      * 匹配前面的字符0次到无数次
      ?匹配前面的字符0次到1次
      + 匹配前面的字符1次到n次
      {m} 配置前面的字符m次
      a{7} aaaaaaa
      {m,n} 匹配前面的字符m到n次
      {0,n} 匹配前面的字符0次到n次  【0要不要?(不行!)】
      {m,} 匹配前面的字符至少m次

    位置锚定

      ^ 锚定行首
      $  锚定行尾
      ^[[:space:]]*$  空白行
       锚定词首和锚定词尾
      >  锚定词尾
      <  锚定词首
      <root>  rooter

    分组

      abc*  abcccc  abc要看成一个整体
      **分组特性:默认情况下,Linux系统会为分组指定变量 ,变量的表示形式 1 2 3 ...  (后向引用)
       示例:(ab+(xy)*)   其中 1 = ab+(xy)* , 2 = xy
                abbbbbxyxyxyabxy

    扩展的正则表达式

      【标准正则表达式中的 都可以去掉】
      分组  : ()  后向引用  1 2 3 ...
      或: |     
        grep -E "(svm|vms)" /proc/cpuinfo  //查看CPU的虚拟化功能
  • 相关阅读:
    如何搭建环境---初识mybatis
    切片,元组,字典字,符串
    关于Linux安装的Python和miniconda
    认识Linux工具
    Linux下安装mysql
    Linux软件的安装
    关于Linux的简单介绍
    如果要做优化,CSS提高性能的方法有哪些?
    文本溢出显示省略号css
    响应式设计?响应式设计的基本原理是什么?如何做?
  • 原文地址:https://www.cnblogs.com/diyudewudao/p/11396817.html
Copyright © 2011-2022 走看看