linux 三剑客之1-grep

  1. grep命令格式
  2. pattern 正则表达式
  3. grep 实战演练题目

基于正则表达式查找满足条件的行

grep命令格式

grep pattern file
grep -i pattern file # 忽略大小写
grep -v pattern file # 不显示匹配的行
grep -o pattern file # 把每个匹配的内容用独立的行显示
grep -E pattern file # 使用扩展正则表达式
grep -A -B -C  pattern file #打印命中数据的上下文
grep pattern  -r dir/ # 递归搜索

pattern 正则表达式

  • 基本表达式(BRE)
    • ^表示开头 $表示结尾
    • [a-z][0-9] 区间
      • 0个或多个
  • 扩展正则(ERE)
    • ? 非贪婪匹配
      • 一个或者多个
    • () 分组
    • {} 范围约束
    • | 匹配多个表达式的任何一个

grep 实战演练题目

  • 从nginx.log 中找出所有 404 和 503 报错的 log 数据,取出前 3 条数据
    less nginx.log | grep -E '(" 404 | " 500)' | head -n 3

转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。
My Show My Code