以下是一个使用awk脚本根据条件按列分组的示例:
假设有一个包含姓名和分数的文件input.txt:
John 80
Alice 90
Bob 70
John 95
Alice 85
Bob 75
我们希望按姓名分组,并计算每个人的平均分。
可以使用以下awk脚本来实现:
awk '{
name = $1
score = $2
sum[name] += score
count[name]++
}
END {
for (name in sum) {
avg = sum[name] / count[name]
print name, avg
}
}' input.txt
运行上述脚本后,输出将是:
Alice 87.5
Bob 72.5
John 87.5
脚本解释:
这样,我们就实现了按姓名分组并计算每个人的平均分的功能。