linux cat命令筛选内容 --grep

举报
一颗小树x 发表于 2020/12/02 23:56:47 2020/12/02
【摘要】 平常我们习惯使用 cat 命令来查看日志信息,文件内容等;有时候只想筛选关键字的信息、文件内容后5行、不看这个关键字有关的信息、多个关键字信息等。 解决方案: 在使用 cat 命令时,搭配使用 grep 命令 和通道 |   直接举例: 查看文件log.txt 中的警告信息,关键字是:warning cat log.txt | grep 'warn...

平常我们习惯使用 cat 命令来查看日志信息,文件内容等;有时候只想筛选关键字的信息、文件内容后5行、不看这个关键字有关的信息、多个关键字信息等。

解决方案:

在使用 cat 命令时,搭配使用 grep 命令 和通道 |

 

直接举例:

查看文件log.txt 中的警告信息,关键字是:warning

cat log.txt | grep 'warning' -A 5     //意思是,在log.txt文件中,查找warning字符,并显示warning所在行的之后5行

cat log.txt | grep 'warning' -B 5    //之前5行

cat log.txt | grep 'warning' -C 5    //前后5行

cat log.txt | grep -v 'warning'       //排除warning所在的行的信息
 

注意:

使用“或”需要加 -e标识

cat apollo.log | grep -E "warning|error"

 

过滤的内容可以是一个词组等, 需要用引号包裹

1. 获取文件中的关键字key:  cat fileName | grep "key"

2. 获取文件中的某个关键字key1, key2, key3: cat fileName | grep -E "key1|key2|key3"

3.获取文件中的多个关键字,同时满足 cat fileName | grep key1 | grep key2| grep key3

4. 忽略文件中的某个关键字, 需要转义"|":cat fileName | grep -v "key1\|key2\|key3"

 

下面说一下,满足多个条件时:

cat log.txt | grep 条件;

cat log.txt | grep 条件一 | grep 条件二;

cat log.txt | grep 条件一 | grep 条件二 | grep 条件三;

grep 条件一 log.txt | grep 条件二 | grep 条件三;

 

希望对你有帮助。

 

彩蛋

错误解决:grep时出现错误 Binary file (standard input) matches

 

在使用grep命令时出现错误Binary file (standard input) matches

解决方法  加上-a

例如原本为 grep hello

改为 grep -a hello

文章来源: guo-pu.blog.csdn.net,作者:一颗小树x,版权归原作者所有,如需转载,请联系作者。

原文链接:guo-pu.blog.csdn.net/article/details/99551298

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。