awk做wordcount

使用awk进行wordcount

被处理数据在文件access_2024-1-21.log(一个单词一行)中,内容如下:

复制代码
word
coutn
wm
sapce
US
china
WORD
WORD
wode
wode
1
2
3333
zzzz
space
spaceX
china
word

执行如下命令可以统计出每个单词出现次数:

复制代码
```bash
 awk '{S[$1]++}END{for(k in S) print S[k],k}' access_2024-1-21.log

结果如下:

root@Oler wm# awk '{S$1++}END{for(k in S) print Sk,k}' access_2024-1-21.log

1 spaceX

1 3333

1 zzzz

1 sapce

1 coutn

1 wm

1 space

1 1

1 2

2 china

2 wode

2 WORD

1 US

2 word

命令解释:

此处的S变量表示一个数组,该数组的索引为每个不重复的单词,值就是S$1,$1代表单词那一列。awk是每都一行执行一次动作。 此处就是每读一行,同一个key对应的值就增加一。从0开始计算。当统计完,最后,也就是END对应的内容,就是循环打印出存储了统计结果的数组的key和值。

相关推荐
能喵烧香1 分钟前
深度解析:Linux 与 Windows 超级权限账户的本质差异
linux·windows
pixcarp20 分钟前
知识库系统的内容资产闭环怎么设计
服务器·数据库·后端·golang
江畔柳前堤40 分钟前
github实战指南01-账号配置与 SSH 密钥
运维·人工智能·深度学习·ssh·github·pyqt·信号处理
Moshow郑锴2 小时前
Ubuntu 26.04 中文输入法 : fcitx5+Rime中州韵引擎
linux·运维·ubuntu
莫名的好感°3 小时前
手机RAR解压怎么选?2026年二季度四款产品问答
服务器·网络·智能手机
qq_163135753 小时前
Linux 【04-more命令超详细教程】
linux
sevencheng7984 小时前
【ADB】adb命令行常用按键模拟代码
linux·adb·模拟按键,返回键,音量键
暗影天帝4 小时前
BPI-R3 Mini 刷 Yuzhii DHCPD U-Boot 教程
linux
小赖同学啊5 小时前
智能连接器集群化高可用生产方案
linux·运维·人工智能
wanghao6664555 小时前
DevOps 从入门到实践:构建高效交付流水线
运维·devops