nynw.net
当前位置:首页 >> Awk '{A[$1]++}END{For (j in A) print A[j]"|"j}' >>

Awk '{A[$1]++}END{For (j in A) print A[j]"|"j}'

a[$1] 是一个关联数组,类似于c++中的map,其中$1的值是键,a[$1]对应的内容就是值,这个值如果是数字,则可以做加减运算。所以 a[$1]++ 就是指数组a中下标为$1对应的值增加1; for ( j in a) 是循环遍历数组a中键值对的用法,j就是依次获取数组...

awk '{a[$1" "$2]++} 以空格为分隔符,把第一段和第二段以空格连接起来加入到数组a里,并计出现次数 END{for(j in a) print a[j],j}' awk处理完信息后,输出a数组的全部内容,并输出出现的次数 这是个统计的操作

NF是字段数,number of field . $NF是最后一个字段, END前面是把最后一个字段+1放到数组S中,END是把数组打印出来, 关联数组的key是最后一个字段的值,value都是1(因为默认值是0,++后是1),.

awk '{sum[$2]+=$1}END{for ( i in sum) print sum[i],i }' 此循环主要用于日志分析,给你举个栗子:如果$1是日志记录文件size字段,$2是日志中的IP字段。这条命令的意思是:定义的函数sum[$2]对字段$1进行循环累加,最后输出累加后的size/$1和...

SUM += $1 sum默认初值为0。awk逐行处理,$1为每行的第一个字段,就是计算每行第一个字段的累加和。 END部分是处理完所有行后执行的。 print SUM 即打印最终的累加和

a[$1]=a[$1] substr($0,length($1)+1) 在awk中将两个字符串写在一起表示连接这两个字符串,a[$1] substr($0,length($1)+1)表示将字符串a[$1]与substr($0,length($1)+1)连接在一起 $1表示第一个字段,substr($0,length($1)+1)表示每行除$1外的子...

把input_file里第二列相同的第一列按空格拼起来,最后输出第二列和拼起来的结果,保存到output里面 比如 root@ubuntu:~# cat input_file 1 2a 21 32 3root@ubuntu:~# awk '{a[$2]=a[$2]" "$1} END {for(i in a) print i"\t"a[i]}' input_file 2 ...

首先得知道access.log的文件格式,才知道访问频率是通过哪个字段值反映的。

{for(i=1;i

awk是一个强大的文字处理工具,这是我的awk学习笔记http://blog.uouo123.com/post/312.html awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'是把tcp开头的匹配出来,再把末尾那一列出现的次数进行汇总 TIME_WAIT 4 ESTABLISHED 2 这样...

网站首页 | 网站地图
All rights reserved Powered by www.nynw.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com