zoukankan      html  css  js  c++  java
  • 【linux三剑客】grep命令

    grep, egrep, fgrep - print lines matching a pattern

    grep 命令用于查找文件里符合条件的字符串。

    grep 指令用于查找内容包含指定的范本样式的文件,如果发现某文件的内容符合所指定的范本样式,预设 grep 指令会把含有范本样式的那一列显示出来。

    若不指定任何文件名称,或是所给予的文件名为 -,则 grep 指令会从标准输入设备读取数据。

    语法:

    grep [-abcEFGhHilLnqrsvVwxy][-A<显示列数>][-B<显示列数>][-C<显示列数>][-d<进行动作>][-e<范本样式>][-f<范本文件>][--help][范本样式][文件或目录...]

    参数:

    • -v 表示排除后面接的内容
      • grep -v oldboy test.txt 表示排除test.txt文件中的oldboy字符串
    • --color=auto 给输出的内容或目录或文件,自动添加对应颜色
      • grep --color=auto 3306 /etc/services
    • -n 对匹配的内容打印行号
      • grep -n . nginx.conf # 对nginx.conf里的配置匹配上的字符打印行号,如果要将空行打印上行号, grep -n ".*" nginx.conf
    • -E 同时匹配多个字符串
      • 命令效果和 egrep 效果等价
      • grep -E '3306|1521' /etc/services
      • egrep '3306|1521' /etc/services
    • -i 或--ignore-case  不区分大小写
    • -o 或--only-matching  不显示整行,只显示匹配的内容
    • -w 或 --word-regexp   只显示全字符和的列;按单词搜索,相当于(单词边界)。
    • -B 除了显示匹配的一行之外,并显示该行之前的num行
      • grep 5 -B 1 test.txt   # 筛选第5行和第五行的前1行
    • -A 除了显示匹配的一行之外,并显示该行之后的num行
      • grep 5 -A 2 test.txt  # 筛选第5行和第五行的后两行
    • -C 除了显示匹配的一行之外,并显示该行之前后各num行
      • grep 5 -C 2 test.txt   # 筛选第5行和前后两行,共5行
  • 相关阅读:
    4K
    4J
    4C
    I2C总线的仲裁机制
    Linux C中strcpy , strncpy , strlcpy 的区别
    Linux下的USB总线驱动(一)
    C/C++ 语言中的表达式求值
    const变量通过指针修改问题
    关于协议栈XDATA,内存溢出的小结
    Ubuntu安装ssh,及失败解决方案
  • 原文地址:https://www.cnblogs.com/zoe233/p/11815762.html
Copyright © 2011-2022 走看看