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 S\[k\],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和值。

相关推荐
简单点了15 小时前
全栈编程基础知识7
运维·服务器·网络
眷蓝天15 小时前
Docker 镜像瘦身:从 GB 到 MB 的优化实践
运维·docker·容器
实心儿儿15 小时前
Linux —— 进程控制 - mini shell
linux·运维·服务器
程序员黄老师16 小时前
Windows文件移动到Linux上的坑
linux·运维·服务器
shizhan_cloud16 小时前
自动化部署Kubernetes集群
运维·kubernetes
mounter62516 小时前
【内核前沿】Linux IPC 迎来大变局?POSIX 消息队列增强、io_uring IPC 与 Bus1 十年回归
linux·运维·服务器·kernel·ipc·io_uring
不怕犯错,就怕不做16 小时前
Linux-Sensor驱动移植与调试(转载)
linux·驱动开发·嵌入式硬件
wzl2026121316 小时前
企业微信定时群发技术实现与实操指南(原生接口+工具落地)
java·运维·前端·企业微信
island131417 小时前
最详细VMware Workstation 17 上安装 Ubuntu 系统
linux·数据库·ubuntu
2401_8955213417 小时前
Linux下安装Redis
linux·运维·redis