读书人

计算文件中的数值相加,该怎么解决

发布时间: 2012-03-18 13:55:38 作者: rapoo

计算文件中的数值相加
使用命令行工具,如果不用循环的方法能不能对下面文件的每一行进行累加呢:

ora_file.txt:

1
10
12
14
56
78

2
3
5
7
8

上面的文件每几行中间有一个空行分隔,我现在要统计1+10+12+...+78 以及 2+3+5...+8的结果,并且输出成如下形式:

结果1

结果2

如果不用循环大家有什么好的办法呢

另外,如果咱们简化一下这个问题,只计算文件中所有数值相加(1+10+12...+8),有没有一个工具呢。

非常感谢大家!

[解决办法]

Python code
$ awk 'BEGIN{FS="\n";RS=""}{tot=0;for(i=1;i<=NF;i++)tot+=$i;total[NR]=tot;}END{for(x in total) print total[x];}' ora_file.txt 17125
[解决办法]
echo `tr -s '\n' '+' < yourfile` 0 |bc -l

读书人网 >UNIXLINUX

热点推荐