首页 > 代码库 > awk数组
awk数组
1、使用awk数组统计出以下域名中相同域名出现的次数
[root@oldboyedu]# cat url.txt http://www.etiantian.org/index.html http://www.etiantian.org/1.html http://post.etiantian.org/index.html http://mp3.etiantian.org/index.html http://www.etiantian.org/3.html http://post.etiantian.org/2.html
第一步:先来统计出一个域名的次数
[root@oldboy files]# awk -F"[/]+" ‘{h[$2]+=1;print $2,h["www.etiantian.org"]}‘ url.txt www.etiantian.org 1 www.etiantian.org 2 post.etiantian.org 2 mp3.etiantian.org 2 www.etiantian.org 3 post.etiantian.org 3
以上统计出了www.etiantian.org域名出现的次数,从统计结果可以看出,这里出现了3次。
第二步:统计全部
[root@oldboy files]# awk -F"[/]+" ‘{h[$2]+=1}END{for (key in h)print key,h[key]}‘ url.txt mp3.etiantian.org 1 post.etiantian.org 2 www.etiantian.org 3
h[$2]+=1 表示h[$2]=h[$2]+1
h[$2] 表示每次出现相同域名的次数 +1就表示当遇到相同的时候就加一次
for (key in h) 使用for循环来统计它们的次数
print key,h[key] 打印出出现相同域名及出现的次数
2、使用awk数组统计下列字母出现的次数
[root@oldboy files]# cat array.txt a 1 b 3 c 2 d 7 b 5 a 3 g 2 f 6 d 9
解答:
[root@oldboy files]# awk ‘{h[$1]+=$2}END{for (key in h)print key,h[key]}‘ array.txt a 4 b 8 c 2 d 16 f 6 g 2
本文出自 “每天一小步” 博客,请务必保留此出处http://fenyuer.blog.51cto.com/11265169/1947101
awk数组
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。