2015-09-09 31 views
0

我有一个grep和排序记录的要求,首先通过mdmId(您可以看到它出现在文本mdmId朝向行尾后),然后通过行号或时间 - 邮票(出现在线条的开始)需要根据2个条件grep和排序记录

电流输出:

$ grep -F -n -f grp_param cmxserver.log 
43723:[2015-09-09 11:18:14,819] [threadExecutor-8] [INFO ] com.delos: CustomerSaveHandler - beforeEverything - mdmId is : 834699 
43896:[2015-09-09 11:18:16,085] [threadExecutor-8] [INFO ] com.delos: Completed the beforeEverything - mdmId is : 
43900:[2015-09-09 11:18:16,086] [threadExecutor-8] [INFO ] com.delos: *****CustomerSaveHandler - beforeSave **** - mdmId is : 
43902:[2015-09-09 11:18:16,086] [threadExecutor-8] [INFO ] com.delos: CustomerSaveHandler - beforeSave - beforeSave - CustomerRelationship - The mdmId is : 834699 
45057:[2015-09-09 11:18:52,952] [threadExecutor-10] [INFO ] com.delos: CustomerSaveHandler - beforeEverything - mdmId is : 834699 
45247:[2015-09-09 11:18:54,067] [threadExecutor-1] [INFO ] com.delos: CustomerSaveHandler - beforeEverything - mdmId is : 834947 
45296:[2015-09-09 11:18:54,093] [threadExecutor-10] [INFO ] com.delos: Completed the beforeEverything - mdmId is : 
45300:[2015-09-09 11:18:54,100] [threadExecutor-10] [INFO ] com.delos: *****CustomerSaveHandler - beforeSave **** - mdmId is : 
45302:[2015-09-09 11:18:54,100] [threadExecutor-10] [INFO ] com.delos: CustomerSaveHandler - beforeSave - beforeSave - CustomerRelationship - The mdmId is : 834699 
45623:[2015-09-09 11:18:55,603] [threadExecutor-1] [INFO ] com.delos: Completed the beforeEverything - mdmId is : 
45627:[2015-09-09 11:18:55,605] [threadExecutor-1] [INFO ] com.delos: *****CustomerSaveHandler - beforeSave **** - mdmId is : 
45629:[2015-09-09 11:18:55,605] [threadExecutor-1] [INFO ] com.delos: CustomerSaveHandler - beforeSave - beforeSave - CustomerRelationship - The mdmId is : 834947 
45779:[2015-09-09 11:18:57,161] [threadExecutor-1] [INFO ] com.delos: CustomerSaveHandler - beforeSave - beforeSave - CustomerRelationship - The mdmId is : 834947 

所需的输出:

43896:[2015-09-09 11:18:16,085] [threadExecutor-8] [INFO ] com.delos: Completed the beforeEverything - mdmId is : 
43900:[2015-09-09 11:18:16,086] [threadExecutor-8] [INFO ] com.delos: *****CustomerSaveHandler - beforeSave **** - mdmId is : 
45296:[2015-09-09 11:18:54,093] [threadExecutor-10] [INFO ] com.delos: Completed the beforeEverything - mdmId is : 
45300:[2015-09-09 11:18:54,100] [threadExecutor-10] [INFO ] com.delos: *****CustomerSaveHandler - beforeSave **** - mdmId is : 
45623:[2015-09-09 11:18:55,603] [threadExecutor-1] [INFO ] com.delos: Completed the beforeEverything - mdmId is : 
45627:[2015-09-09 11:18:55,605] [threadExecutor-1] [INFO ] com.delos: *****CustomerSaveHandler - beforeSave **** - mdmId is : 
43723:[2015-09-09 11:18:14,819] [threadExecutor-8] [INFO ] com.delos: CustomerSaveHandler - beforeEverything - mdmId is : 834699 
43902:[2015-09-09 11:18:16,086] [threadExecutor-8] [INFO ] com.delos: CustomerSaveHandler - beforeSave - beforeSave - CustomerRelationship - The mdmId is : 834699 
45057:[2015-09-09 11:18:52,952] [threadExecutor-10] [INFO ] com.delos: CustomerSaveHandler - beforeEverything - mdmId is : 834699 
45302:[2015-09-09 11:18:54,100] [threadExecutor-10] [INFO ] com.delos: CustomerSaveHandler - beforeSave - beforeSave - CustomerRelationship - The mdmId is : 834699 
45247:[2015-09-09 11:18:54,067] [threadExecutor-1] [INFO ] com.delos: CustomerSaveHandler - beforeEverything - mdmId is : 834947 
45629:[2015-09-09 11:18:55,605] [threadExecutor-1] [INFO ] com.delos: CustomerSaveHandler - beforeSave - beforeSave - CustomerRelationship - The mdmId is : 834947 
45779:[2015-09-09 11:18:57,161] [threadExecutor-1] [INFO ] com.delos: CustomerSaveHandler - beforeSave - beforeSave - CustomerRelationship - The mdmId is : 834947 

您可以在所需的输出看,与mdmId空第一条记录被拾取并根据行号(或时间戳)进行排序。其次是Id 834699和Id 834947。

您的帮助表示赞赏。

感谢

+1

并不是所有的线路都mdmId值 – fedorqui

+0

是。并非所有行都有mdmId值。 – Sourabh

回答

2

附加给你的grep的:

| awk '{$1=$NF" "$1; print}' | sort -k1,2n | cut -d " " -f 2- 

输出:

 
43896:[2015-09-09 11:18:16,085] [threadExecutor-8] [INFO ] com.delos: Completed the beforeEverything - mdmId is : 
43900:[2015-09-09 11:18:16,086] [threadExecutor-8] [INFO ] com.delos: *****CustomerSaveHandler - beforeSave **** - mdmId is : 
45296:[2015-09-09 11:18:54,093] [threadExecutor-10] [INFO ] com.delos: Completed the beforeEverything - mdmId is : 
45300:[2015-09-09 11:18:54,100] [threadExecutor-10] [INFO ] com.delos: *****CustomerSaveHandler - beforeSave **** - mdmId is : 
45623:[2015-09-09 11:18:55,603] [threadExecutor-1] [INFO ] com.delos: Completed the beforeEverything - mdmId is : 
45627:[2015-09-09 11:18:55,605] [threadExecutor-1] [INFO ] com.delos: *****CustomerSaveHandler - beforeSave **** - mdmId is : 
43723:[2015-09-09 11:18:14,819] [threadExecutor-8] [INFO ] com.delos: CustomerSaveHandler - beforeEverything - mdmId is : 834699 
43902:[2015-09-09 11:18:16,086] [threadExecutor-8] [INFO ] com.delos: CustomerSaveHandler - beforeSave - beforeSave - CustomerRelationship - The mdmId is : 834699 
45057:[2015-09-09 11:18:52,952] [threadExecutor-10] [INFO ] com.delos: CustomerSaveHandler - beforeEverything - mdmId is : 834699 
45302:[2015-09-09 11:18:54,100] [threadExecutor-10] [INFO ] com.delos: CustomerSaveHandler - beforeSave - beforeSave - CustomerRelationship - The mdmId is : 834699 
45247:[2015-09-09 11:18:54,067] [threadExecutor-1] [INFO ] com.delos: CustomerSaveHandler - beforeEverything - mdmId is : 834947 
45629:[2015-09-09 11:18:55,605] [threadExecutor-1] [INFO ] com.delos: CustomerSaveHandler - beforeSave - beforeSave - CustomerRelationship - The mdmId is : 834947 
45779:[2015-09-09 11:18:57,161] [threadExecutor-1] [INFO ] com.delos: CustomerSaveHandler - beforeSave - beforeSave - CustomerRelationship - The mdmId is : 834947 

参见:Schwartzian transform

+0

不错!我不知道这被称为Schwartzian变换 – fedorqui

+0

感谢赛勒斯..赞赏你的帮助..它运作良好..让我试验它谢谢 – Sourabh