linux - 在 Linux 中从文件末尾开始在一列中添加数字

标签 linux bash awk

我有一个包含一列的文件,我想从文件底部开始在此列中添加数字,并在每一行中打印总和。例如,如果我有以下数字:

1
2
3 
4
5
6

我希望结果看起来像这样:

21(6+5+4+3+2+1)
20(6+5+4+3+2)
18(6+5+4+3)
15(6+5+4)
11(6+5)
6 (6)

如果我要从上到下添加数字,我会想到以下内容 我想知道是否有办法使用 linux、cat、awk 等来反转求和的顺序。感谢任何帮助或建议。

`cat file.txt | gawk ' { sum+=$1; print sum; }' > Final.file`

最佳答案

$ tac file | awk ' { sum+=$1; print sum }' | tac
21
20
18
15
11
6

关于linux - 在 Linux 中从文件末尾开始在一列中添加数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26330986/

相关文章:

c - 多线程嵌入式linux应用状态机设计

linux - libtool 的 .la 文件有什么用?

linux - BASH 文件空间

c++ - 在 C++ 中替代 bash 同步

bash - 如何在 bash 中使用单个循环处理多个级别的结果?

bash - 使用 awk 将整数求和到 bash 中的列

statistics - 如何使用 awk 从文件中获取所有与统计相关的信息?

linux - 使用 diff 比较目录时,有没有办法从输出中排除某些文件差异?

linux - Win32 InterlockedIncrement 和 InterlockedExchange 是跨进程的原子吗?

regex - 为什么空格分隔而不是 FPAT