美文网首页
Linux命令: grep

Linux命令: grep

作者: 闲云野鹤_23dd | 来源:发表于2020-11-25 20:13 被阅读0次

    grep

    grep 原单词Gnu Regular Expression Print | (global search regular expression(RE) and print out the line) (全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。)
    <mark style="box-sizing: border-box; background-color: rgb(255, 255, 0); color: rgb(0, 0, 0);">工作中应用于日志关键字过滤,查找日志中处理对应接口或者代码信息</mark>

    grep 命令用于查找文件里符合条件的字符串。如果有,会打印出符合条件的每一行

    语法

    grep 关键词 文件或目录
    
    

    举例: grep mysql a.log : 这样会把 a.log 文件里包含 mysql的每一行给打印出来

    参数

    参数介绍
    -A 原单词 after 之后
    -B 原单词 before 之前


    image.png
    • -A<行数>:除了显示包含关键词的那一行之外,并显示该行之后的内容,行数写几就显示几行
    • -B<行数>:除了显示包含关键词的那一行之外,并显示该行之前的内容,行数写几就显示几行

    实战

    进入 /root目录
    新建 grepTest 文件夹
    将/root/vimTest/base.yml 复制到当前目录下
    cp /root/vimTest/base.yml .


    image.png

    再复制几个副本,等会练习grep使用。
    cp base.yml base2.yml
    cp base.yml app.yml


    image.png

    查找base.yml文件中包含8084的那一行

    grep 8084 base.yml


    image.png

    查找base.yml文件中包含8084的那一行,并展示前一行和后两行

    grep -A2 -B1 8084 base.yml


    image.png

    查找base开头的文件中,包含guoya_mall的那一行

    grep guoya_mall base*

    • 表示通配符,可以在find命令课程中复习*的使用
    image.png

    查找以.yml结尾文件中,包含testDB的那一行,并显示前3行,后3行.

    grep -A3 -B3 testDB *.yml


    image.png

    相关文章

      网友评论

          本文标题:Linux命令: grep

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