zoukankan      html  css  js  c++  java
  • grep用法小结

    用法

    grep [OPTIONS] PATTERN  [FILE...]
    grep [OPTIONS] -e PATTERN ... [FILE...]
    grep [OPTIONS] -f FILE ... [FILE...]

    grep在文件中查找匹配正则表达式的内容,默认打印出匹配的一行

    选项

    -E 支持扩展正则表达式
    -F 把PATTERN解析成简单的字符串,而不是正则表达式
    -G 只支持基础正则表达式,这是默认选项
    -P 支持perl正则表达式

    使用文件grp.txt为演示

    $ cat grp.txt 
    {"id":1, "username": "jack", "email": "459874@qq.com"}
    {"res":[2,1,5,7]}
    baidu in beijing
    didi in beijing
    ali in hangzhou
    tencent in shenzhen
    huawei in shenzhen

    -e PATTERN, 使用-e选项可以匹配多个条件

    -f FILE, 从文件中获取PATTERN
    -i 忽略大小写
    -v 反向匹配,只选择未匹配的

    -w 匹配整个单词
    -x 匹配整行

    可以看到 -x 选项和 grep  '^h.*en$' grp.txt 等价

    -c 不打印结果,只打印匹配到的行数
    --color 匹配到的表达式高亮显示
    -L 打印出未匹配的文件列表
    -l 打印出匹配的文件列表
    -m 指定最大匹配行数

    -o 只打印匹配到的字符串,而不是打印一整行


    -q 不打印结果,但是我们可以根据$?来判断是否有匹配到,在脚本中常用
    -s 不打印错误结果(文件不存在、不可读文件)

    -b  打印本行在文件中的字节偏移量

    -H 打印匹配的文件名。当有多个文件匹配到的时候,这个是默认选项

    -h 不打印文件名

    -n 输出行号

    --label 显示输入的时候用到,让标准输入STDIN的显示像从文件中读取的一样

    -T 输出按照tab缩进

    -Z 在文件名后输出 zero byte, 也就是啥都不输出

    -A NUM 在匹配行后面再输出 NUM 行内容

    -B NUM 在匹配行前面再输出 NUM 行内容

    -C NUM 在匹配行前后各输出 NUM 行内容

    --exclude=GLOB

    --exclude-from=FILE 

    --exclude-dir=GLOB

    这三个是跳过文件或目录

    --include=GLOB 只处理匹配 GLOB 的文件

  • 相关阅读:
    自学Zabbix8.1 Regular expressions 正则表达式
    自学Zabbix7.1 IT services
    自学Zabbix6.1 Event acknowledgment 事件确认
    自学Zabbix5.1 zabbix maintenance维护周期
    自学Zabbix4.3 zabbix实战监控Web网站性能
    自学Zabbix4.2.1 Application介绍
    自学Zabbix4.2 web监控项创建+item详解
    自学Zabbix4.1 zabbix监控web服务器访问性能
    自学Zabbix3.11-宏Macros
    自学Zabbix3.10.2-事件通知Notifications upon events-Actions报警配置
  • 原文地址:https://www.cnblogs.com/zuofaqi/p/10256060.html
Copyright © 2011-2022 走看看