业务同学发过来一个需求,需要统计日志记录中匹配关键字"ECOXXXXXXX"的数量有多少
19-01-18 16:28:56.943 [ForkJoinPool.commonPool-worker-4] INFO com.ecall.fasteroms.distribution.task.AutoSplitOutOrderService [269] - ECO180511560 -> 30406, 都是赠品不拆弹
19-01-18 16:28:57.397 [ForkJoinPool.commonPool-worker-4] INFO com.ecall.fasteroms.distribution.task.AutoSplitOutOrderService [269] - ECO180515576 -> 30406, 都是赠品不拆弹
19-01-18 16:28:57.406 [ForkJoinPool.commonPool-worker-10] INFO com.ecall.fasteroms.distribution.task.AutoSplitOutOrderService [269] - ECO181855767 -> 30406, 都是赠品不拆弹
我让开发同学把日志文本发过来,思考了一下,此文本每一行的格式都一样,可以考虑用cut命令的列提取功解决这个需求:
[root@test201 test]# cut -d " " -f 9 test-0118.txt
ECO181642316
ECO180554016
ECO181758482
ECO180552254
OK,下一步统计匹配关键字的数量就简单了:
[root@test201 test]# cut -d " " -f 9 test-0118.txt|wc -l
2582