gpt4 book ai didi

linux - 如何在循环中使用awk读取每十行文件?

转载 作者:太空宇宙 更新时间:2023-11-04 09:35:20 25 4
gpt4 key购买 nike

我有一个文件,其中的行使用“返回”分隔。我想使用两个循环,一个循环用于每十行读取一次,一个循环用于对这十行执行特定操作。如何使用awk读取文件中的每十行?

示例文件是这样的:

1 2
3 4
5 6
7 8
9 10
9 10
7 8
6 5
4 3
2 1
2 1
4 3
5 4
6 5
7 6
8 7
9 8
0 9
1 2
3 4
5 6
7 8
9 10
9 10
7 8
6 5
4 3
2 1
2 1
4 3
5 4
6 5
7 6
8 7
9 8
0 9

我想读取每十行,然后打印这十行中两个数字的平均值并打印。

谢谢。

最佳答案

awk '
{sum1 += $1; sum2 += $2}
function output() {print sum1/10, sum2/10; sum1 = sum2 = 0}
NR % 10 == 0 {output()}
END {output()}
' input.file

输出

5.3 5.7
4.5 4.9
5.5 5.5
3.5 3.9

END只有6行数据,但是除以10,请要求更精确。

关于linux - 如何在循环中使用awk读取每十行文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27235981/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com