- 论坛徽章:
- 0
|
不知道为啥子我回不了帖子……
原帖如下:
请大神帮我处理一下,文本有点大,十分感谢
附件文件是oswatch采集的文本,每隔20秒采集一次,时间线如下:
grep "^zzz" file.txt
zzz ***Fri Aug 12 03:00:14 CST 2022
zzz ***Fri Aug 12 03:00:34 CST 2022
zzz ***Fri Aug 12 03:00:54 CST 2022
zzz ***Fri Aug 12 03:01:14 CST 2022
zzz ***Fri Aug 12 03:01:34 CST 2022
想要结果:
1、按照时间数据统计这20m之间有多少个进程
比如结果如下:
zzz ***Fri Aug 12 03:00:14 CST 2022 - 39
zzz ***Fri Aug 12 03:00:34 CST 2022 - 25
zzz ***Fri Aug 12 03:00:54 CST 2022 - 19
zzz ***Fri Aug 12 03:01:14 CST 2022 - 19
zzz ***Fri Aug 12 03:01:34 CST 2022 - 17
2、这期间有多少个并行进程以ora_p0开头的这种进程(比如ora_p013_dwdb4),也类似上述这种输出格式,谢谢
解答:
- awk '{if( $6 == "CST" ){tmstr=$5}else{print tmstr " " $0;if($3 ~ /^[0-9]+$/ ){nums[tmstr]++;if($NF ~/^ora_p0*/){ora[tmstr]++;print $0" "ora[tmstr]}}}}END{for(x in nums) print x" " nums[x] " oranums " ora[x]}' file.txt|awk '{if($3=="oranums"){print $0}}' |sort -n
复制代码 方法可能有点笨,第一次发帖
|
|