awk数组的应用

2019-03-19  本文已影响0人  RealLuo

1.什么是数组?

答:数组值的是一个可以储存多个值的变量;

因此,当一个脚本中需要应用到很多的变量时,数组可以较好的解决这个问题;

2。数组的格式是怎么样的?

答:数组的格式如下:

定义数组的格式:数组名[ 下标 ]=元素量

调用数组的格式:数组名 [ 下标 ]

遍历数组的用法:for ( 变量 in  数组名 ) { print  数组名 [ 变量 ] }

3.awk数组的实际应用;

例如:运用数组统计出服务器网页的访问量,并列出排名;

第一步、厘清思路,搞清楚httpd网页的日志文件 /var/log/httpd/access_log

第二步、清楚的值的awk和数组的运行格式;

具体命令如下:

awk '{ip[$1]++} ; END{for (i in ip) {print i , ip[i]}}' /var/log/httpd/access_log | sort -r -k 2

输出结果为:

172.25.0.250 9

172.25.0.10 5

译为:

{ ip [$1]++ }  :指的是数组 ip  ,下标$1 ,  每遇到一个同样的ip就++,加1的意思;

END    :指的是最后的意思;

for (i in ip) :指的是循环执行将ip数组的值赋给i;

{print  i  ,  ip [i] }    : 指的是打印结果;

sort   :指的是排序的意思;

-r        :指的是反序排列;

-n        :指的是顺序升序排列;

-k        :指的是以第几列为排序参数;

以上......

(本篇完)


祝:顺利!

罗贵

2019-03-19于深圳

上一篇 下一篇

猜你喜欢

热点阅读