美文网首页
shell 之正则表达式

shell 之正则表达式

作者: 朱溪江 | 来源:发表于2019-01-07 19:15 被阅读10次

    正则表达式(regular expression, RE)

    是一种字符模式,用于在查找过程中匹配指定的字符。
    在大多数程序里,正则表达式都被置于两个正斜杠之间;例如/l[oO]ve/就是由正斜杠界定的正则表达式,
    它将匹配被查找的行中任何位置出现的相同模式。在正则表达式中,元字符是最重要的概念。

    基本正则表达式元字符
    ^     行首定位符
    $     行尾定位符
    .      匹配打个字符
    *      匹配前导符0到多次
    .*     任意多个字符
    [ ]    匹配指定范围内的一个字符    [iL]ove
    [ - ]   匹配指定范围内的一个字符,连续的范围内
    [ ^ ]   匹配相反的字符
    \       转义
    \<    词首定位符
    \>    词尾定位符
    ( )    匹配用括号括起来的字符,而不是替换
    +     匹配1~n个前导字符
    ?     匹配0~1个前导字符
    a|b  匹配a或b   
    
    
    示例:
    love       查love
    /^love/   查以love开头的
    /love$/   查出以love结尾的
    /l.ve/     查询 l开头 .匹配任意一个字符   ve结尾
    
    

    重点

    一、逐行处理

    与grep一样,sed在文件中查找模式时也可以使用正则表达式(RE)和各种元字符。正则表达式是括在斜杠间的模式,用于查找和替换,以下是sed支持的元字符。

    使用基本元字符集 ^, $, ., *, [], [^], < >,(),{}
    使用扩展元字符集 ?, +, |, ( )

    sed -r -i ' ' /etc/passwd

    -r 支持正则表达式 -i 插入文件 修改写入文件
    ' ' 引号中间 前半部分写范围 后部分写操作命令[ ]

    awk 编程

    1. 统计/etc/passwd中各种类型shell的数量


      zhutong$
    苍蝇也是肉,一分也是爱。既然都读到了这儿,喜欢、关注留一个呗~() ~

    相关文章

      网友评论

          本文标题:shell 之正则表达式

          本文链接:https://www.haomeiwen.com/subject/obcprqtx.html