grep的使用:
归一化参数
-e:使用正规搜索
-i:不区分大小写
-v:查找不包含指定内容的行
-按-w:个单词搜索
-c:计数匹配次数
-显示-n:行号
-r:按层巡视目录搜索
-A:显示匹配的行及其前面的行数。 例如,对于: -A3,显示匹配的行及其前三行
-B:显示匹配的行及其后续行数。 例如,对于: -B3,显示匹配行及其后的三行
-C:显示匹配行前后的多少行? 例如, -C3显示批次行前后三行
grep同时满足多个关键字和任意关键字:
1、grep-e ' word1' word2' word3' file.txt
满足任意条件(word1、word2、word3之一)时匹配。
2、grep word 1file.txt
必须同时满足word1、word2和word3三个条件。
正则表达式用于搜索匹配的字符串。
一、或(or)操作
1、使用
在grep 'a1|a2' filename//文件(filename )中找到包含a1或a2的行
2、使用选项-E
在grep -E 'a1|a2'filename//文件(filename )中找到包含a1或a2的行
3、使用egrep
egrep 'a1|a2' filename//在egrep中也同样可以实现
4、使用选项-e
如果使用grep -e选项,则只传递一个参数。 在单个命令中使用多个-e选项
grep-e a1-e a2文件名称//是使用-e选项实现的
5、使用awk
awk '/a1|a2/'文件名//awk的实现方法
备注:推荐使用方法3
二、与(操作
1、使用-E 'par1.*par2'
grep命令本身不提供AND功能。 但是,使用-E选项可以执行AND操作。
示例1 (其中两个pattern的顺序已指定) :
grep -E 'a1.*a2' filename
例2 )两个pattern的顺序不是固定的,可以是乱序的) :
grep -E 'a1.*a2|a2.*a1' filename
2 .使用多个grep命令
找到与grep 'a1' filename | grep 'a2'//和a2都匹配的行
三.非(not )操作
1、使用选择项grep -v
使用grep -v可以进行NOT操作。 -v选项用于实现反向选择匹配(invert match )。 例如,可以匹配除指定的pattern以外的所有lines。
grep -v 'par1' filename
2、将NOT操作与其他操作配合,实现更强大的功能组合
示例:得到' a1或a2,但不是a3 '的结果。
egrep ' a1 ' filename ' grep-v a3
四.其他操作
grep -i pattern files//不区分大小写进行搜索,默认区分大小写
grep -l pattern files//只列出匹配的文件名;
grep -L pattern files//列出不匹配的文件名
grep -w pattern files//匹配整个单词而不是字符串的一部分。 (例如,匹配“幻像”而不是“幻像”);
grep -C [number] pattern files //每个匹配的上下文都显示“number”行。
tail的用法:
tail -f xxx.log ----实时更新最新日志
tail-100fXXX.log-----实时更新最新的100行日志
tail -100f xxx.log | grep [关键字] -------在最新的一百行中查找与关键字匹配的行
tail-100 fxxx.log|grep ' 2019-10-291633604 [0-9]----搜索最新100行时的时间范围为2019-10-2916336040-2019-10-10
tail -1000f xxx.log | grep -A 5 [关键字] ----------查看最新1000行中与关键字匹配的行加上匹配的行的五行
tail :为了显示文件的内容
-f循环读取
-q不显示处理信息
-v显示详细的处理信息
-c数显示的字节数
-n显示行数文件末尾n行的内容
--pID=PID与-f并用,表示工艺id、PID死后退出
-q、--quiet、--silent不输出文件名的开头
-s,--sleep-interval=S与-f并用,表示以每次重复的间隔休眠s秒
专业测量:
1、tail -f log_20210606.log (实时日志) )。
2、tail-flog _ 2021 06 06.log|grep ' 8ee 3057 c 3d 304 f 108 d 6a 38d af 1440557 ' (根据条件查询日志) ) ) )。
3、grep-e ' 2021-06-0602:5 [8-9] : [0-5] [0-9]|2021-06-0607:0 [0-5] : [0-5] 0