• 正则表达式(Linux 下搭配 grep 使用)


    目录

    1.基本正则表达式

    2.扩展正则表达式

    3.实操之grep筛选

    3.1基本正则表达式

    3.2扩展正则表达式


    1.基本正则表达式

    ^                用于最左端,如^"abc",匹配以abc开头的行

    $                用于最右端,如"abc$",匹配以abc结尾的行

    ^$               表示空行

    .                  表示匹配任意一个字符

    \                   转义字符,如"\.",表示字符'.'

    *                   出现0次或1次以上,"a*"表示a出现0次或1次以上

    .*                   匹配任意字符

    ^.*                 任意字符开头

    .*$                 任意字符结尾

    [abc]              匹配括号中任意一个字符,也可以写成[a-c]

    [^abc]             匹配除了abc以外的字符     


    2.扩展正则表达式

    +                匹配前一个字符1次或多次

    [abc]+        匹配abc 1次或多次

    ?                匹配前一个字符0次或1次

    |                 或者的意思

    ()                分组

    a{n,m}        匹配a最少n次,最多m次

    a{n,}           匹配a最少n次

    a{n}            匹配a n次

    a{,m}        匹配a最多m次


    3.实操之grep筛选

    grep参数如下

     测试文件内容为:

    passwd.txt文件:(配置文件扒下来)

    cat /etc/passwd > passwd.txt

    3.1基本正则表达式

            (1)在grep.txt中查找以'i'开头的行

            (2)在passwd.txt中查找有登陆权限(即以"/bin/bash"结尾的行)

            (3)在grep.txt中查找到除空行和注释以外的行

            (4)在grep.txt中查找以'.'结尾的行并排除空行

            (5)在grep.txt中查找以任意一个字符加上'a'的所有行

            (6)在grep.txt中查找含有大写字母的所有行


    3.2扩展正则表达式

    grep 加上 -E 选项

    (1)grep -E -n "go?d" grep.txt 
    

            (2)当前目录下查找含有'a'或者'e'的txt文件

            (3)样例文件:

     这里的'\1'表示前面括号中的内容

            

  • 相关阅读:
    CSS背景background八种属性
    车间调度问题总结笔记二——AGV调度
    (十七)STM32——定时器
    Unity让摄像机一直跟随在玩家后上方
    Go语言学习教程(十三)
    第三章-完善MBR
    基线加固是什么
    【JavaScript】leetcode链表相关题解
    pxb 使用物理备份恢复数据库
    【计组】总线
  • 原文地址:https://blog.csdn.net/xiao_xiao21/article/details/139589110