分析crash时文件几百兆?没关系,管道过滤轻松解决
1.查找所有文本文件中包含某个关键字的行
find ./ -name "*" -type f |xargs grep -i "Crash"
2.查找gz文件中XXXX进程号出现次数最多的进程号
ls *main*gz | sort -nk1 | while read f; do echo $f `zcat $f|fgrep XXXX|awk '{print $3}'|sort|uniq -c|sort -nk1|tail -1|awk '{print $2}'`; done
3.查找43-main.log_2019_5_3_8_44_34.gz文件中29878进程出现最后的50行
(进程最后的遗言)
zcat 43-main.log_2019_5_3_8_44_34.gz | fgrep 29878 | tail -50
(最好再加上进程名 否则可能过滤到无效log)