grep或/与的多重过滤,包含ABC,但不含ABCD的字符echo输出带颜色的字符
背景:还是因为最近压测,要判定设备是否存在crash,grep crash之后,但是总有一些其他关键词的干扰,例如:crash_event,no crash等,所以梅开二度,再次修改脚本,来一个完整判断。话不多说,上代码~
str=$(cat F2_logcat.log | grep -i "fatal" | grep -v "fatal_events")if [[ $str != "" ]]thenecho "$str" >> error.txtecho "\033[31m天亮请睁眼,昨晚你被Crash了!!!\033[0m"let "FAIL++"elseecho '恭喜你!昨晚是平安夜~~~'let "PASS++"fi
1、先来说grep多重过滤
很多细节就不在这里展开了,可以自行--help,说几个常用的,grep操作默认是区分大小写的
- -i 或 --ignore-case : 忽略字符大小写的差别。
- -v 或 --invert-match : 显示不包含匹配文本的所有行
(base) ➜ 1 cat logcat.log
1 a
2 ab
3 aabb
4 aabbcc
5 AB
6 AbC
7 abc
8 ABCd% (base) ➜ 1 cat logcat.log | grep ab
2 ab
3 aabb
4 aabbcc
7 abc
(base) ➜ 1 cat logcat.log | grep -i ab
2 ab
3 aabb
4 aabbcc
5 AB
6 AbC
7 abc
8 ABCd
(base) ➜ 1 cat logcat.log | grep -v ab
1 a
5 AB
6 AbC
8 ABCd
(base) ➜ 1 cat logcat.log | grep -i ab | grep -v abc
2 ab
3 aabb
4 aabbcc
5 AB
6 AbC
8 ABCd
这个结果一目了然,就不用过多解释了,再说一下或和与的操作
1)grep匹配ab,bc,ac任一个字符即可
(base) ➜ 1 cat logcat.log | grep "ab\|bc\|ac"
2 ab
3 aabb
4 aabbcc
7 abc
2) grep匹配ab,bc,必须同时满足才匹配
(base) ➜ 1 cat logcat.log | grep ab | grep bc
4 aabbcc
7 abc
2、echo输出红色字符
Linux输出带颜色的字符,格式如下,用的最多的就是红色,颜色配置表格我就不贴出来了
echo \033[显示方式;前景色;背景色m
其中\033
是ESC健的八进制,\033[
即告诉终端后面是设置颜色的参数,显示方式,前景色,背景色均是数字
# 替换代码中的汉字就可以直接运行了,不用添加'
echo "\033[31m红色文字\033[0m"
echo "\033[32m绿色文字\033[0m"
echo "\033[33m黄色文字\033[0m"
grep或/与的多重过滤,包含ABC,但不含ABCD的字符echo输出带颜色的字符相关推荐
- grep 或 egrep 或awk 过滤两个或多个关键词|使用grep匹配“与”或者“或”模式
原文地址为: grep 或 egrep 或awk 过滤两个或多个关键词|使用grep匹配"与"或者"或"模式 转自:http://hi.baidu.com/ch ...
- 使用adblock的高级自定义过滤器, 来过滤包含特定文字的html元素
需求: 想用adblock 过滤一个div窗体, 该窗体的特征是其子元素包含指定的文字. 解决方法: 使用adblock的 Snippet 过滤器语法. snippet 命令 hide-if- ...
- java字符流的父类_Java基于代码实战的字符流父类、字符转换流、缓冲字符流、过滤流...
1. Java输入输出(I/O)流的知识回顾: 补充:因为这篇文章是基于上一篇的延续,因此将上一篇进行简单的回顾,以便理解本节内容. 1)输入输出(I/O)流分类:共分为字节型输入输出流和字符型输入输 ...
- php过滤4字节的字符串,过滤utf8 字符中超过三个字节的字符,或者非utf8字符
function filterUtf8($str) { /*utf8 编码表: * Unicode符号范围 | UTF-8编码方式 * u0000 0000 - u0000 007F | 0xxxxx ...
- 滑动窗口:给你一个仅由大写英文字母组成的字符串,你可以将任意位置上的字符替换成另外的字符,总共可最多替换 k 次。在执行上述操作后,找到包含重复字母的最长子串的长度。
一.问题描述 给你一个仅由大写英文字母组成的字符串,你可以将任意位置上的字符替换成另外的字符,总共可最多替换 k 次.在执行上述操作后,找到包含重复字母的最长子串的长度. 注意: 字符串长度 和 k ...
- java中判断字符串实际长度(中文2个字符,英文1个字符)的方法,包含中英文符号
java中判断字符串实际长度(中文2个字符,英文1个字符)的方法,包含中英文符号 介绍 数据库中很多字段都会限制长度,为了方便用户使用,在前端界面给出限制长度的提示,看网上很多写的获取字符串长度都没有 ...
- C语言程序设计——从键盘任意输入一个字符串(可以包含:字母、数字、标点符号,以及空格字符),计算其实际字符个数并打印输出,即不使用字符串处理函数strlen()编程,但能实现strlen()的功能。
从键盘任意输入一个字符串(可以包含:字母.数字.标点符号,以及空格字符),计算其实际字符个数并打印输出,即不使用字符串处理函数strlen()编程,但能实现strlen()的功能. 程序运行示例: P ...
- 利用 Linux grep 和 awk 完成日志过滤
导语:有时候系统的日志信息的量是很庞大的,这时要查看具体问题可能比较麻烦.此时可以过滤掉无用的日志信息,从而获取预期想获取的信息.或者在排查问题时,查看具体的某一个错误. Linux grep 命令用 ...
- 编写一程序,输入一个字符串,查找该字符串中是否包含“abc”。
import java.lang.String.*;//这里调用java.long.String.contains()方法: import java.util.Scanner; public clas ...
最新文章
- Struts 动态Form的验证框架步骤
- postgresql - mac 启动 关闭 postgresql
- 字符串Hash的原理与应用
- java转换为c#_将25k行C#转换为Java的经验教训
- python.day05
- 电脑w ndows无法自动修复,windows 10自动修复无法修复你的电脑
- 【转】QT布局QGridLayout QHBoxLayout QVBoxLayout简要分析!!
- mac下git安装与使用
- hosts管理工具:SwitchHosts的下载与使用教程
- NOIP2013普及组复赛 解题分析
- Java导出导入Excel方法
- SuperMap iClient3D for WebGL实现三维管线分析
- JS、H5调用手机相册摄像头以及文件夹
- 阿里优酷视频分类方法???咋理解啊?
- 绩效考核如何尽量公正
- word文档中如何将软回车替换为硬回车
- 在Linux上安装centos 7镜像详细步骤
- 使用python对图片进行压缩
- java -- 百度API 接口使用
- 每个架构师都应该了解的理论:康威定律