Linux三剑客之grep命令

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

常用参数:

-e:使用正则搜索

-i :不区分大小写

-v:查找不包含指定内容的行

-w:按单词搜索

-c :统计匹配到的次数

-n :显示行号

-r  :逐层遍历目录查找

-A :显示匹配行及后面多少行, 如: -A3, 则表示显示匹配行及后3行

-B :显示匹配行及前面多少行, 如: -B3, 则表示显示匹配行及前3行

-C :显示匹配行前后多少行, 如: -C3, 则表示显示批量行前后3行

--color :匹配到的内容高亮显示

--include : 指定匹配的文件类型

--exclude: 过滤不需要匹配的文件类型

 

常用例子:

1.多文件查询
grep leo logs.log logs_back.log

 

2.查找即包含leo又包含li的行
grep leo logs.log | grep li

 

3.查找匹配leo或者匹配li的行

grep leo | li logs.log

 

4.显示匹配行前2行
grep leo logs.log -A2

 

5.显示匹配行后2行
grep leo logs.log -B2

 

6.显示匹配行前后2行
grep leo logs.log -C2

 

7.不区分大小写
grep -i leo logs.log

 

8.使用正则表达式
grep -e '[a-z]\{5\}' logs.log

 

9.查找不包含leo的行
grep -v leo logs.log

 

10.统计包含leo的行数
grep -c leo logs.log

 

11.遍历当前目录及所有子目录查找匹配leo的行
grep -r leo .

 

12.在当前目录及所有子目录查找所有java文件中查找leo
grep -r leo . --include "*.java"

 

13.查找并输出到指定文件
grep leo logs.log > result.log

 

14.查找以leo开头的行
grep ^leo logs.log

 

15.查找以leo结尾的行
grep leo$ logs.log

 

16.查找空行
grep ^$ logs.log

posted @ 2020-04-02 14:17  胖胖123  阅读(211)  评论(0编辑  收藏  举报