Linux awk sort
2018-05-31 15:56:38|25961|Cmd_Hero_GetFreeHeros_CS|2|481|0|14|22
2018-05-31 15:56:38|25961|Cmd_Role_GetNotice_CS|2|41|0|15|2
2018-05-31 15:56:38|25961|Cmd_IAP_GetList_CS|2|175|0|16|807
2018-05-31 15:56:38|25961|Cmd_Ping_GetAllServerIp_CS|2|70|0|17|159
2018-05-31 15:56:38|25961|Cmd_Skill_GetAllData_CS|2|51|0|18|8
2018-05-31 15:56:38|25961|Cmd_Act_GetList_CS|2|4289|0|19|305342
2018-05-31 15:56:38|25961|Cmd_Live_GetFocusList_CS|2|97|0|20|0
2018-05-31 15:56:38|25961|Cmd_Role_GetClientInfo_CS|4|43|0|21|4
2018-05-31 15:56:38|25961|Cmd_Role_GetClientInfo_CS|4|32|0|22|4
2018-05-31 15:56:38|25961|Cmd_Role_GetClientInfo_CS|4|31|0|23|4
2018-05-31 15:56:38|25961|Cmd_Role_GetClientInfo_CS|4|31|0|24|4
2018-05-31 15:56:38|25961|Cmd_Role_GetClientInfo_CS|4|33|0|25|4
2018-05-31 15:56:38|25961|Cmd_Role_GetClientInfo_CS|4|32|0|26|4
2018-05-31 15:56:38|25961|Cmd_Role_GetClientInfo_CS|4|31|0|27|4
2018-05-31 15:56:38|25961|Cmd_Role_GetClientInfo_CS|4|31|0|28|4
2018-05-31 15:56:38|25961|Cmd_Role_SetNationality_CS|4|508|0|29|4
2018-05-31 15:56:38|25961|Cmd_Battle_GetBattleData_CS|9|301|0|30|105
awk -F"|" '{if($3 != "") a[$3]++} END {for(i in a) printf("%-8s %s\n", a[i], i)}'|sort -r -n -k1
上面是客户端协议log记录,假如要统计每条消息的量就可以使用awk命令
-F "|" :将每条记录以‘|’字符分割
if($3 != "" a[$3]++):动作第三列部位空,就以第三列为下标数组统计数量,感觉有点像map,有点诡异,awk会针对每一行执行这个动作
END {for(i in a) printf("%-8s %s\n", a[i], i)}:所有行执行完了会执行这个END,打印a数组中的所有value和key
printf:print会自动换行,但可实现功能简单,printf不支持换行,得自己加\n,支持格式化输出
|sort -r -n -k1:通过管道让sort排序,-r表示逆序 -n表示按照大小排序,默认是按照asscii码比较每个字符,-k1表示第一列排序
http://awk.readthedocs.io/en/latest/chapter-one.html#id3
Linux awk sort的更多相关文章
- linux awk,sort,uniq,wc,cut命令详解
1.awk awk是行处理器: 相比较屏幕处理的优点,在处理庞大文件时不会出现内存溢出或是处理缓慢的问题,通常用来格式化文本信息 $ 表示当前行 $ 表示第一列 NF 表示一共有多少列 $NF 表示最 ...
- Linux的sort命令
Linux的sort命令 Linux的sort命令就是一种对文件排序的工具,sort命令的功能十分强大,是Shell脚本编程时常使用的文件排序工具. sort命令将输入文件看做由多条记录组成的数据流 ...
- linux awk命令详解
linux awk命令详解 简介 awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大.简单来说awk就是把文件逐行的读入,以空格为默认分 ...
- Linux echo, sort, sed 等一些命令总结
linux echo, sort, sed是初学linux shell script 的一些常用的命令.基本上来说,如果能够掌握了这些命令,我们就能写出一些不错的linux脚本.以下是我遇到的以下常用 ...
- (转) linux之sort用法
sort命令是帮我们依据不同的数据类型进行排序,其语法及常用参数格式: sort [-bcfMnrtk][源文件][-o 输出文件] 补充说明:sort可针对文本文件的内容,以行为单位来排序. 参 数 ...
- linux awk 中 RS,ORS,FS,OFS 区别与联系【转】
linux awk 中 RS,ORS,FS,OFS 区别与联系 http://blog.csdn.net/jesseen/article/details/7992929
- 线上问题debug过程(cat,grep,tr,awk,sort,uniq,comm等工具的综合使用)
问题:发现线上到货单的数量,小于实际到货的数量. 怀疑一些隐藏的条件,将部分唯一码进行了过滤,导致数量变少. 开展了如下的跟踪流程: 1.找到其中一个明细的唯一码 grep 6180e-4b09f p ...
- linux下sort命令使用详解---linux将文本文件内容加以排序命令
转载自:http://www.cnblogs.com/hitwtx/archive/2011/12/03/2274592.html linux下sort命令使用详解---linux将文本文件内容加以排 ...
- Linux awk命令常见使用方法介绍
Linux awk命令常见使用方法介绍 By:授客 QQ:1033553122 awk运行方式有三种,其中常用的为命令行方式 awk [-F field_separator] '{patter ...
随机推荐
- 一个封装不错的 TcpClient 类
using System;using System.Net;using System.Net.Sockets;using System.Text;using System.Threading; nam ...
- python3.5环境配置
前言: python3应该是python的趋势所在,当然目前争议也比较大,这篇随笔的主要目的是记录在linux6.4下搭建python3环境的过程 以及碰到的问题和解决过程. 另外,如果本机安装了py ...
- JDBC(12)—DBUtils工具类
DBUtils:commons-dbutils是Apache组织提供的一个开源JDBC工具库,它是对JDBC的简单封装,并且使用dbutils会极大的简化jdbc编码的工作量,同时不会影响到程序的性能 ...
- IT职业后半段发展问题
忆: 八年前,当我结束第二份工作,寻求第三份工作的时候,我就有了一个疑惑,IT职场上45岁以上或是50岁以上的人去哪了,我去请教以前的老领导,他告诉我有一些转行了,有一些他也不清楚,我的老领导也就比我 ...
- 2.1 mac下多版本jdk的安装和管理
之前已经安装过jdk8了,安装路径:/Library/Java/JavaVirtualMachines/jdk1.8.0_144.jdk 现在安装jdk10,下载后,双击dmg文件一直到安装完成,安装 ...
- JS对HTML字符的转义
function htmlEscape(str){ var s = ""; if(str.length == 0) return ""; s = str.rep ...
- commit 冲突
git status or repo sync . 时看到如下的提示: error: packages/apps/app/: branch alpha is published (but not me ...
- html5使用canvas实现毫秒级画心电图
- 关联规则挖掘算法之Apriori算法
Apriori算法是一种挖掘关联规则的频繁项集算法,其核心思想是通过候选集生成和情节的向下封闭检测两个阶段来挖掘频繁项集. 关于这个算法有一个非常有名的故事:"尿布和啤酒".故事是 ...
- 唯一ID算法之:snowflake(Java版本)
Twitter开源的算法,简单易用. /** * Twitter_Snowflake<br> * SnowFlake的结构如下(每部分用-分开):<br> * 0 - 0000 ...